Comment accéder à l'interface API fournie par EMQX
Référence
Site officiel HTTP API Protocole HTTPCréez une application et spécifiez le code d'autorisation
Connectez-vous au terminal de gestion de texte d'EMQX. Si aucune modification n'a été apportée, l'adresse du terminal de gestion doit être le port 18083 de l'adresse IP du serveur. Après vous être connecté avec succès au terminal de gestion WEB, cliquez successivement sur "Général" et "Application". Nous créons d'abord une nouvelle APP, l'ID et le nom de l'APP peuvent être saisis à volonté, la sélection du statut permet l'accès et la date d'expiration est sélectionnée en fonction des besoins réels. Une fois la création réussie, supprimez l'application par défaut EMQX, sinon il y aura des risques de sécurité. Nous devons également commenter le compte APP par défaut et la configuration de la clé dans /etc/emqx/plugins/emqx_management.conf, sinon l'application par défaut sera recréée après le redémarrage du service EMQX. Ensuite, nous retournons à la page de liste des applications et cliquons sur Afficher dans l'opération pour afficher l'application que nous venons de créer.Dans les informations détaillées, nous pouvons voir la clé APP.
Interface de l'API d'accès aux tests
Après avoir obtenu la clé APP, nous pouvons utiliser des requêtes HTTP pour accéder à l'interface API. Il est important de noter que nous devons ajouter des informations d'autorisation dans l'en-tête. Pour plus de détails, reportez-vous à l'exemple suivant. Pour les définitions des autres interfaces, veuillez vous référer à la référence officielle en haut de l'article. Dans les deux paragraphes d'exemples suivants, le premier paragraphe est une requête CURL directe dans la ligne de commande Linux, et le deuxième paragraphe est une requête utilisant du code 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;