Aller au contenu

Messages recommandés

Posté(e)

Bonsoir tout le monde !

 

est ce quelqu'un arrive encore à faire des requêtes http directement sous IE ?

 

une toute simple pour tester : allumage d'une lampe ...

 

http://admin:mdp@192.168.x.y/api/callAction?deviceID=138&name=turnOn

 

Chez moi il me retourne une erreur comme quoi l'adresse n'est pas valide.

Et je soupçonne le Login:mdp qui ne serait plus accepté dans les url ? C'est possible ?

 

si j'enlève le couple admin:mdp, il me demande les identifiants, et ça fonctionne.

 

sous Firefox, il me l'accepte si je valide une alerte.

 

Vous remarquez la même chose ? est ce une limitation des navigateurs ?

Posté(e)

Bonjour @jjacques68, j'ai la même chose sous IE11, utilise Firefox ou bien chrome ;). De plus c'est l'ancienne API qui n'est plus supportée et qui disparaîtra un jour ou l'autre alors autant passer par la nouvelle ex: http://192.168.1.xxx/api/devices/1484/action/turnOn, mais attention c'est en méthode POST et pas en GET.

Posté(e)

Le compte "admin" n'existe plus, et est renommé par une adresse email (avec un arobase @ donc ça pose problème dans l'URL)

Tu peux utiliser un compte utilisateur que tu crées via l'interface Web, ainsi cela t'éviter d'exposer le mot de passe du compte administrateur en clair.

  • Upvote 1
Posté(e)

Oui j'ai déjà créer un autre user  à cause de ça (avec les bons droits sur les modules)

 

mais quand je saisie cette URL (avec le bon user, mdp, ip et id)

 

http://admin:mdp@192.168.1.xxx/api/devices/1484/action/turnOn

 

Il me retourne le contenu json du device... !!!! Et rien ne s'allume !

Posté(e)

Normal, Kirkroff t'as bien précisé que c'est une requête POST et non pas du GET.

Donc tu ne peux pas le faire depuis la barre d'adresse de ton navigateur, car il ne sait faire que du GET.

Il faut que tu utilises pour cela une extension, ou des commandes Curl depuis un shell Linux par exemple.

Posté(e)

Salut, 

 

pour contourner ce pb, j'ai créé un VD avec plusieurs boutons. puis un utilisateur TOTO qui a les droits sur ce VD.

http://toto:password@192.168.x.y/api/callAction?deviceID=zzz&name=pressButton&arg1=5

on appuie sur le bouton 5 du VD dont l'id est zzz

 

C'est @pepite qui m'a mis sur la voie ! Merci à lui :74:

Posté(e)

Oui avec l'ancienne API v3 aucun problème en GET, mais Jacques68 veut utiliser l'API v4, qui impose des requêtes POST.

Posté(e) (modifié)
Il y a 1 heure, Lazer a dit :

Donc tu ne peux pas le faire depuis la barre d'adresse de ton navigateur, car il ne sait faire que du GET.

 

D'accord, mais alors lorsque l'ancienne api va disparaître, on va avoir de sacrés soucis !!! Avec nos IPX et sarah par exemple !

 

lorsque Google home ou Amazon Écho seront dispo, ça va être galère si on peut plus faire de requêtes GET !!!

 

@Lazer nos messages viennent de se croiser :) 

Modifié par jjacques68
Posté(e)

L'IPX permet de faire du POST, donc ça devrait fonctionner

(cela dit, je viens de vérifier, et j'utilise toujours l'ancienne API v3 en GET depuis mon IPX v4, comme dans l'exemple de Chris2div)

 

Pour Sarah je pense qu'il n'y aura pas de souci non plus, c'est développé par un pro.

 

Tout système pas trop mal foutu sait faire n'importe quel type de requête, il n'y a que la barre d'adresse des navigateurs qui soit limité au GET. En fait, ça n'embête que nous, quand on essaye de débugger les API avec des requêtes GET sur le navigateur.

Pour cette raison, ça fait longtemps que je n'utilise plus la navigateur pour tester, mais j'ai toujours une connexion sur un Linux dans un coin pour tester les requêtes avec Curl, qui sait absolument tout faire.

Posté(e)

Ok.

 

Mais il me semble que sur les IPX V3 on peut faire que du GET (je crois qu'on en avait déjà parlé toi et moi sur un autre sujet... :) )

 

ça sent le remplacement d'IPX un de ces jours ça... :( 

Posté(e)

Ah sur les v3 je ne sais pas.

 

Par contre sur les V4, il y a le GET et le POST, mais il manque le PUT, dont on a besoin si on veut mettre à jour des fake-devices par exemple.... d'où l'emploi de subterfuges en cliquant sur des boutons de VD.

 

 

Posté(e)

Je confirme aussi après lecture des notices, l'IPX V3 envoie des requêtes push en GET et rien d'autre.

Contrairement a l'IPX V4...

 

Vais devoir changer d'IPX... ça me pendait au nez de toute façon... :( 

  • 1 mois après...
Posté(e) (modifié)

@Krikroff @Lazer :

 

J'essaye de transformer cette requête (mise à jour d'un label d'un VD) en V3 de l'API de la HC2 : (qui fonctionne parfaitement)

http://admin:pwd@192.168.xx.yy/api/callAction?deviceID=329&name=setProperty&arg1=ui.VG.value&arg2={'VG1':'valeur1', 'VG2':'valeur2'}

en version 4... j'essaye toutes les syntaxes possibles, mais sans succès !

http://admin:pwd@192.168.xx.yy/api/devices/329/setProperty/arg1=ui.VG.value&arg2={'VG1':'valeur1', 'VG2':'valeur2'}
http://admin:pwd@192.168.xx.yy/api/devices/329/action/arg1=ui.VG.value&arg2={'VG1':'valeur1', 'VG2':'valeur2'}
http://admin:pwd@192.168.xx.yy/api/devices/329/action/setProperty/arg1=ui.VG.value&arg2={'VG1':'valeur1', 'VG2':'valeur2'}
...

vous avez une idée ?

 

merci d'avance !!

 

Modifié par jjacques68
Posté(e)

Parce qu'on peut choisir la version de l'API ?

 

Sinon tu es sur de tes 2 / de suite : 

api//device
Posté(e)

Ben d,'après ce que j'ai pu comprendre (voir plus haut), oui !

 

pour les // c'est une erreur lors du copier colé... désolé

il est clair que j'ai fais les tests avec un seul /

je corrige... merci !

Posté(e) (modifié)

voilà un exemple de différence entre V3&V4 pour allumer une lumière :

V3 - http://admin:pwd@192.168.x.y/api/callAction?deviceID=46&name=turnOn
V4 - http://admin:pwd@192.168.x.y/api/devices/46/action/turnOn

V3 = méthode GET ; V4 = méthode POST.

 

Mais je trouve pas comment modifier un label en V4... (après c'est pas vital non plus...)

Pour les tester j'utilise un plugin du navigateur.

Modifié par jjacques68
×
×
  • Créer...