Sådan får du adgang til API-interface leveret af EMQX

Reference

Officiel hjemmeside HTTP API HTTP-protokol

Opret en applikation, og angiv autorisationskoden

Log ind på tekststyringsterminalen på EMQX. Hvis der ikke er foretaget nogen ændringer, skal administrationsterminalens adresse være port 18083 på serverens IP. Når du er logget ind på WEB-administrationsterminalen, skal du klikke på "Generelt" og "Applikation" igen. Vi opretter først en ny APP, id'et og navnet på APP'en kan indtastes efter ønske, statusvalget giver adgang, og udløbsdatoen vælges i henhold til de faktiske behov. Når oprettelsen er vellykket, skal du slette standardapplikationen EMQX, ellers vil der være sikkerhedsrisici. Vi har også brug for at kommentere standard APP-kontoen og nøglekonfigurationen i /etc/emqx/plugins/emqx_management.conf, ellers gendannes standard-APP'en efter genstart af EMQX-tjenesten. Derefter går vi tilbage til applikationslistesiden og klikker på Vis i operationen for at se den applikation, vi lige har oprettet. I de detaljerede oplysninger kan vi se APP-nøglen.

Test adgang API interface

Når vi har fået APP-nøglen, kan vi bruge HTTP-anmodninger til at få adgang til API-grænsefladen. Det er vigtigt at bemærke, at vi skal tilføje autorisationsoplysninger i overskriften. For detaljer henvises til følgende eksempel. For definition af andre grænseflader henvises til den officielle reference øverst i artiklen. I de følgende to afsnit af eksempler er det første afsnit en direkte CURL-anmodning i Linux-kommandolinjen, og det andet afsnit er en anmodning ved hjælp af PHP-kode.

            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;