Come accedere all'interfaccia API fornita da EMQX

Riferimento

Sito ufficiale HTTP API Protocollo HTTP

Crea un'applicazione e specifica il codice di autorizzazione

Accedere al terminale di gestione testi di EMQX Se non sono state apportate modifiche, l'indirizzo del terminale di gestione dovrebbe essere la porta 18083 dell'IP del server. Dopo aver effettuato correttamente l'accesso al terminale di gestione WEB, fare clic su "Generale" e "Applicazione" a turno. Per prima cosa creiamo una nuova APP, l'ID e il nome dell'APP possono essere inseriti a piacimento, la selezione dello stato consente l'accesso e la data di scadenza viene selezionata in base alle effettive esigenze. Dopo che la creazione è riuscita, eliminare l'applicazione predefinita EMQX, altrimenti ci saranno rischi per la sicurezza. Dobbiamo anche commentare l'account APP predefinito e la configurazione della chiave in /etc/emqx/plugins/emqx_management.conf, altrimenti l'APP predefinita verrà ricreata dopo il riavvio del servizio EMQX. Quindi torniamo alla pagina dell'elenco delle applicazioni e facciamo clic su Visualizza nell'operazione per visualizzare l'applicazione appena creata.Nelle informazioni dettagliate, possiamo vedere la chiave APP.

Test dell'interfaccia API di accesso

Dopo aver ottenuto la chiave APP, possiamo utilizzare le richieste HTTP per accedere all'interfaccia API. È importante notare che è necessario aggiungere le informazioni sull'autorizzazione nell'intestazione. Per i dettagli, fare riferimento al seguente esempio. Per la definizione di altre interfacce, fare riferimento al riferimento ufficiale all'inizio dell'articolo. Nei seguenti due paragrafi di esempi, il primo paragrafo è una richiesta CURL diretta nella riga di comando di Linux e il secondo paragrafo è una richiesta che utilizza codice PHP.

            curl -i --basic -u app_id:app_key-X GET "http://localhost:8081/api/v4/nodes"
        
            $app_id = 'app_id';
$app_key = 'app_key';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Basic '.base64_encode($app_id.':'.$app_key)]);
$result = curl_exec($ch);
curl_close($ch);
echo $result;