2011-02-10 3 views
0

Selon le Facebook docs, OAuth Device Flow est pris en charge. Cependant, lorsque je suis leurs instructions sur le démarrage du processus Device Flow, je reçois un code d'état de 400 (méthode non implémentée).Prise en charge du flux de périphériques Facebook

Est-ce que quelqu'un a réussi à faire fonctionner le processus Facebook Device Flow?


boucle -X post https://graph.facebook.com/oauth/device?type=device_code&client_id= {appId}

<HTML> 
    <HEAD> 
     <TITLE>400 Bad Request</TITLE> 
    </HEAD> 
    <BODY> 
     <H1>Method Not Implemented</H1> 
     Invalid method in request<P> 
    </BODY> 
</HTML> 

Répondre

2

À propos de votre erreur spécifique, il semble que les docs de facebook ont ​​fait que vous le faites mal: FAIL

Vous devez envoyer une demande de POST, que vous êtes comme king cURL à faire, mais les données de requête ne doivent pas faire partie de l'URL. Au lieu de cela, vous devez utiliser l'option -d pour spécifier les données envoyées et utiliser l'URL jusqu'au? signe, comme montré dans this superuser question

Mais! Même si vous avez utilisé la bonne méthode HTTP, vous obtiendrez une erreur qui se lit comme suit:

Type non pris en charge: 'code_périphérique'. Types pris en charge: serveur_web, user_agent, client_cred, nom d'utilisateur

Maintenant, la meilleure partie: cela se produit, sauf si vous utilisez le client_id facebook eux-mêmes utilisés pour their demo! Dans ce cas, vous obtenez une réponse 200 (OK) avec le code attendu, user_code et verification_uri. Apparemment, leur application est différente de celles avec lesquelles nous essayons. Aucun indice dans la page de configuration de l'application à ce sujet. En passant, je n'ai trouvé personne prétendant avoir utilisé avec succès le Device Flow de Facebook, n'est-ce pas?

+0

bug Facebook: http: // développeurs. facebook.com/bugs/166716050078293 Les commentaires suggèrent que cette fonctionnalité n'est pas ouvertement disponible. –