Ich versuche, meine Facebook-App gegen einen Benutzer zu authentifizieren.Facebook oauth Antwort mit falsch formatierten URL-Parameter
Meine Anwendung bietet die folgenden für den Start des oauth Zulassungsverfahren:
Dann wird der Browser leitet auf Facebook, fragt für die Berechtigungen und leitet auf die Umleitungs-URL gegeben, aber mit den falschen URL-Parameter:
wie Sie die Query-String leer ist und stattdessen die Abfrage-Strings nach dem '#' als URL-Fragment sehen. Es sieht ziemlich komisch aus ... Die URL wäre korrekt, wenn sie das Hashzeichen nicht enthalten würde. Da Fragment für den Server irrelevant ist, kann ich das Fragment nicht von der URL in meinem Code abholen.
Ist das ein Facebook-Bug?
Nein, es ist sehr wahrscheinlich, dass Sie anfangs falsche Parameter übergeben haben. Zum Beispiel, dass Sie einen 'code' Parameter bereits drin haben, macht keinen Sinn - Sie erhalten einen Code _back_ aus dem Login-Dialog, nachdem der Benutzer die App autorisiert hat, und dann muss Ihre App diesen Code für ein Zugriffs-Token austauschen. Das Starten des gesamten Prozesses mit einem bereits vorhandenen "code" -Parameter macht also überhaupt keinen Sinn. – CBroe
Der "Code" macht keinen Unterschied. In der Tat mit geänderter URL wie https://graph.facebook.com/oauth/authorize?state=xxxx&redirect_uri=http://dev.foo.com:12020/app/c-rex/authorize-facebook-action/&response_type= code & client_id = xxxxxxxx & scope = publish_pages, email & type = user_agent das Problem bleibt –
Gehen Sie https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow#login für den richtigen Weg, um die Anmeldedialog – CBroe