2016-04-19 4 views
2

Ich versuche tatsächlich, einen OAuth-Login mit WeChat für meine Webanwendung einzurichten. Also, ich habe ein Konto auf wechat erstellt, und ich habe einen Test-Account verwendet, um alle Zugriffe unbegrenzt zu haben.Wechat: OAuth mit Testaccount

Also, auf der Test-Konto-Konfiguration, habe ich erfolgreich das Token von WeChat validieren (siehe hier: http://admin.wechat.com/wiki/index.php?title=Getting_Started).

Auf der doc, ist OAuth erklären hier: http://admin.wechat.com/wiki/index.php?title=User_Profile_via_Web

Wir müssen Benutzer auf diese URL für die Anmeldung umleiten: https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

Ich habe APPID Konto von meinem Test ersetzen AppId, meine Umleitung URI wie: http://wechat.mydomain.net, SCOPE durch die richtige (snsapi_userinfo) und entfernen Sie den Zustandsparameter (optional). Aber, ich hatte einen Fehler auf WeChat:

Oops! Something went wrong:(

Nach Stunden der Forschung, stelle ich die Domain auf "Api Berechtigungsliste", in "Webpage Account" Wechat configuration

Aber ich immer diese haben Error. Vielleicht vermisse ich etwas, aber ich finde was nicht. Dort ist meine endgültige URL genannt: https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8ytvf5838cc7t33d&redirect_uri=http://wechat.mydomain.net/wechat/callback&response_type=code&scope=snsapi_userinfo&connect_redirect=1#wechat_redirect

Vielen Dank für Ihre Hilfe!

+0

Hallo ich gleiches Problem bekam haben Sie das Problem lösen. – Meteoric

+0

Ich habe das gleiche Problem mit https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo (die kein offizielles Konto benötigt). Ich habe einen Benutzer, der dem Testkonto (mir) folgt und das Token erfolgreich validiert hat. Der Aufruf der OAuth-URL mit wechat mit meinem Follower-Account gibt mir das gleiche Ergebnis (Hoppla! Etwas schief gelaufen :() –

Antwort

6

Hoffe, dass es für Sie noch relevant (oder jemand anderes)

Die WeChat oAuth nur von einem offiziellen Konto zu sein scheint und nicht in das Testkonto unterstützt.

Wenn Sie ein genehmigtes offizielles Konto haben, können Sie es unter der Registerkarte Berechtigungen im Admin überprüfen.

Wie auch immer - der Login Callback wird immer einen Fehler zurückgeben, wenn nicht von der nativen WeChat-Anwendung aufgerufen. Sie können es nicht einfach im Browser öffnen.

Sie können meine PHP-Klasse bei GitHub überprüfen, enthält es (bis jetzt) ​​die oAuth und der Nachrichten-Engine: https://github.com/nitzanb/wechat-class

+0

Ich hatte gerade das gleiche Problem, ich dachte, du könntest jemanden über eine Webseite einloggen und speichern Sie ihr Authentifizierungs-Token.So sagen Sie, dass dies nur über eine App möglich ist? – JamesG

+0

Das Auth-Token funktioniert nur durch die native WeChat-Anwendung.Wenn Sie einen Benutzer auf einer Website mit seiner WeChat ID anmelden möchten, empfehle ich dass Sie die QR-Code-Schnittstelle überprüfen werden – TwoDiv

+0

Danke für die Antwort! Könnten Sie bitte eine Webadresse angeben, damit ich einen Blick auf den Prozess werfen kann? Ich habe versucht, das zu untersuchen, kann aber nirgends Informationen finden. – JamesG