2016-04-20 2 views
4

Ich verfolge die Entwicklung Führer hier: https://developers.facebook.com/docs/messenger-platform/quickstartFacebook Messenger API: Eine aktive Zugriffstoken muss verwendet werden, um Informationen über den aktuellen Benutzer abzufragen

ich mein Setup-Server und die webhooks haben. Wenn ich versuche, eine POST-Anfrage an die Facebook Graph API zu machen, erhalte ich die folgende Antwort:

{"response":{"statusCode":400,"content":"{\"error\":{\"message\":\"An active access token must be used to query information about the current user.\",\"type\":\"OAuthException\",\"code\":2500,\"fbtrace_id\":\"GHWSIH8OBGm\"}}","headers":{"www-authenticate":"OAuth \"Facebook Platform\" \"invalid_request\" \"An active access token must be used to query information about the current user.\"","access-control-allow-origin":"*","pragma":"no-cache","cache-control":"no-store","facebook-api-version":"v2.6","expires":"Sat, 01 Jan 2000 00:00:00 GMT","content-type":"text/javascript; charset=UTF-8","x-fb-trace-id":"GHWSIH8OBGm","x-fb-rev":"2296043","vary":"Accept-Encoding","x-fb-debug":"4KebPKo5T+Al/88Z7DWtZ8ROawIB3cZFLp65OVi/soTB6hOHstvXox5czalYj45FdI+2r+MQwNh9PHur5uGSbQ==","date":"Wed, 20 Apr 2016 23:45:26 GMT","transfer-encoding":"chunked","connection":"keep-alive"},"data":{"error":{"message":"An active access token must be used to query information about the current user.","type":"OAuthException","code":2500,"fbtrace_id":"GHWSIH8OBGm"}}}} 

ich die Seite Zugriffstoken bin mit der Apps-Seite zur Verfügung gestellt. Ich habe den fb-Token-Validator verwendet, um zu bestätigen, dass das Token nicht abgelaufen ist.

Ich freue mich über jede Hilfe mit diesem.

+0

Was ist die eigentliche Post-Anforderung Sie machen? – user3268305

Antwort

2

Die Fehlermeldung zeigt an, dass Sie versucht haben, die Informationen über den aktuellen Benutzer abzufragen, der mit Ihrem Char Bot kommuniziert. Der API-Endpunkt, der die Benutzerinformationen dient, ist:

https://graph.facebook.com/v2.6/USER_ID_HERE?fields=first_name,last_name,profile_pic&access_token=PAGE_ACCESS_TOKEN_HERE 

Und nach der Dokumentation, müssen Sie eine GET-Anfrage machen (nicht POST) zu diesem Endpunkt.

Sie können die Konversation personalisieren, indem Sie den Namen oder das Profilbild der Person aus der Benutzerprofil-API verwenden. Um diese Informationen zu erhalten, machen Sie eine GET-Anfrage an https://graph.facebook.com/v2.6/? Felder = Vorname, Nachname, Profil_pic & access_token =. Weitere Informationen finden Sie in der Send-API-Referenz. https://developers.facebook.com/docs/messenger-platform/implementation#user_profile_api

+1

Ich habe das gleiche Problem, und die Demo, die ich versuche zu bauen, verwendet definitiv POST, um Daten per Messenger an den Benutzer zu senden. Das Problem scheint zu sein, dass Facebook dich nicht einmal herumspielen lässt oder deinen Chatbot testet, bevor sie die App überprüft haben. – wortwart

+1

Was ist die 'USER_ID_HERE'? ist das/ich? – astiefel

+0

Es ist die "Absender-ID", die Sie mit der Nachricht auf Ihrem Webhook erhalten. –

2

Versuchen Sie, die "Berechtigung" Header mit dem Wert "Bearer PAGE_ACCESS_TOKEN" statt Einstellung "access_token: PAGE_ACCESS_TOKEN"

Verwandte Themen