На самом деле я пытаюсь настроить вход в OAuth с помощью WeChat для моего веб-приложения.
Итак, я создал аккаунт на wechat, и я использовал тестовый аккаунт, чтобы иметь неограниченный доступ.
Итак, в конфигурации тестовой учетной записи я успешно проверил токен от wechat (см. Здесь: http://admin.wechat.com/wiki/index.php?title=Getting_Started).
На документе OAuth объясняется здесь: http://admin.wechat.com/wiki/index.php?title=User_Profile_via_Web
Мы должны перенаправить пользователя на этот URL для входа в систему:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri = redirect_uri&response_type = код&Объем = ОБЛАСТЬ ПРИМЕНЕНИЯ&состояние = СОСТОЯНИЕ # wechat_redirect
Я заменил APPID на свой тестовый аккаунт AppId, мой URI перенаправления, например:
http://wechat.mydomain.net, УЗНАЙТЕ по правильному (snsapi_userinfo) и удалите параметр состояния (необязательно). Но у меня была ошибка на Wechat:
Oops! Something went wrong:(
После нескольких часов исследований я установил домен в «Списке разрешений Api», в «Учетной записи веб-страницы».
Но у меня всегда есть эта ошибка. Может быть, я что-то упустил, но я не могу найти что.
Вот мой последний URL называется:
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
Спасибо за вашу помощь !
Надеюсь, что это все еще актуально для вас (или кого-либо еще)
Похоже, что WeChat oAuth доступен только с официального аккаунта и не поддерживается в тестовом аккаунте.
Если у вас есть утвержденный официальный аккаунт, вы можете проверить его на вкладке прав доступа в админке.
В любом случае — логин обратного вызова будет всегда вернуть ошибку, если не вызвано из собственного приложения WeChat. Вы не можете просто открыть его в браузере.
Вы можете проверить мой PHP-класс на GitHub, он включает (пока) oAuth и механизм сообщений: https://github.com/nitzanb/wechat-class
Других решений пока нет …