- État Fermée
- Pourcentage achevé
- Type Anomalie
- Catégorie Freebox OS → API
- Assignée à Personne
- Système d'exploitation Tous
- Sévérité Basse
- Priorité Très Basse
- Basée sur la version 3.2.0
- Due pour la version Non décidée
-
Échéance
Non décidée
- Votes
- Privée
Concerne le projet: Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)
Ouverte par agend - 29/01/2016
Dernière modification par rfliedel - 13/02/2017
Ouverte par agend - 29/01/2016
Dernière modification par rfliedel - 13/02/2017
FS#19548 - erreur aleatoire session token
Bonjour,
Je développe une application domotique en c++ sur FLYPORT
Lorsque je veux obtenir un “session token” la Freebox refuse l’obtention si le “session_token” possède le signe +.
Si le message ne possède pas de + tout fonctionne correctement et je peux interroger le Freebox, dans le cas présent détecter la présence d’un smartphone.
Comme j’ai dû déjà supprimer les \ pour obtenir le password (non signalé sur “Freebox os api” ) je pense qu’il me manque une information concernant ce message comportant un +.
Un grand merci par avance si vous pouvez me donner une réponse.
Cordialement.
A G
Chargement...
Activer les raccourcis clavier
- Alt + ⇧ Shift + l Se connecter/Se déconnecter
- Alt + ⇧ Shift + a Ouvrir une tâche
- Alt + ⇧ Shift + m Mes recherches
- Alt + ⇧ Shift + t Rechercher par ID de tâche
Liste des tâches
- o Ouvrir la tâche sélectionnée
- j Déplacer le curseur vers le bas
- k Déplacer le curseur vers le haut
Détails de la tâche
- n Tâche suivante
- p Tâche précédente
- Alt + ⇧ Shift + e ↵ Enter Modifier cette tâche
- Alt + ⇧ Shift + w Surveiller
- Alt + ⇧ Shift + y Fermer cette tâche
Édition de la tâche
- Alt + ⇧ Shift + s Enregistrer la tâche
Vous êtes sûr de bien encoder le session_token ?
Vous pouvez donner une trace avec les headers https ?
Oui car j'ai un code en réponse qui s'exécute correctement sauf s'il comporte un +
client = TCPClientOpen("mafreebox.freebox.fr/","80");
sprintf(texte1, "{\r\n\"app_id\": \"%s\",\r\n\"password\": \"%s\"\r\n}",app_id,password);
sprintf(resultat, "POST /api/v3/login/session/ HTTP/1.1\r\nHOST: mafreebox.freebox.fr\r\nContent-Type: %s\r\nContent-Length: %d\r\n\r\n%s \r\n\r\n" , CType , strlen( texte1 ), texte1);
TCPWrite(client,resultat,strlen(resultat));//Envoi de la demande de STATUS
Dans l'exemple de l'API Freebox vous remarquerez qu'il n'y a pas de +
Bonne soirée et merci pour votre intérêt
A G
Donnez moi la trace de l'échange complet avec ce que vous envoyez et ce que la freebox retourne
supprimer d'ou ?
Je pense qu'à un moment donné vous n'interprétez pas correctement le json