生成微信二维码

时间:2015-11-09 10:36:02

标签: wechat

我正在登录页面,我想使用微信作为登录选项,我有一个微信官方帐号。在我对文档的理解中,假设下一个链接会生成一个QR代码进行扫描,并在用户授权后重定向到其他地方......:

https://open.weixin.qq.com/connect/qrconnect?appid=wx8bxxx21bxxxx0fxxx&redirect_uri=https://myhostname/oauth2.php&response_type=code&scope=snsapi_login&state=101#wechat_redirect

但链接不起作用。我不知道我是否遗漏了某些东西,或者网站https://myhostname/oauth2.php必须先前对微信进行授权... ???

有人使用过这款微信吗?

提前致谢!

3 个答案:

答案 0 :(得分:1)

我后来意识到您必须拥有一个微信开放平台帐户,您可以在其中注册您的Web应用程序,等待批准,然后授予其登录权限以访问该QR代码功能

答案 1 :(得分:0)

您需要在重定向网址中将 OAuth2.0网络授权域设置为子域,例如: wechat.myredirectdomain.com

此设置隐藏在微信官方帐户开发设置仪表板上,有些位于API列表之间,请确保正确设置。

答案 2 :(得分:0)

如果您正在研究如何扫描网页上正式帐户的二维码后登录网页。 有两种方法可以解决这个问题。

扫描服务官方帐户

您可以生成带有参数的qrcode。然后您进行扫描后,后端就会触发一个事件。 捕获事件并提取参数,然后按照所需方式进行身份验证。

基本工作流程:

  1. 应用程序前端请求您的后端进行会话。
  2. 应用后端调用微信api生成一个qrcode,并注入您喜欢的任何参数。
  3. 应用程序前端显示二维码。
  4. 用户扫描服务帐户的二维码。
  5. 如果用户未订阅,则订阅官方帐户。
  6. 后端
  7. 接收扫描事件,提取信息并验证用户身份。

扫描订阅官方帐户

订阅中的编程支持较少,但是您仍然可以通过设计随机代码来实现。

基本工作流程:

  1. 应用程序前端请求您的后端进行会话。
  2. 应用后端生成随机代码。
  3. 应用程序前端显示带有随机代码的官方帐户的二维码。
  4. 用户扫描订阅正式帐户的二维码。
  5. 如果用户未订阅,则订阅官方帐户。
  6. 用户在官方帐户消息用户界面中输入随机代码。
  7. 后端接收代码并验证用户身份。
  8. 如果需要,可以使用openid在数据库中附加用户信息。

使用开放平台以智能的方式做到这一点。

如果您为一个正式帐户执行此操作,则可以。假设您要针对多个正式帐户重复使用此功能。 也许可以使用开放平台的方式,所以您只能有一个后端来处理多个帐户。 微信提供了一个开放的平台,这里是get start doc。 注册一个开放平台需要支付300RMB进行验证,更麻烦的是,您需要注册一家有资格的公司才能支付。 因此,也许使用第三方开放平台将是一个更好的选择。如Dagui Qrcode Tool

钥匙拿走

  • 使用参数Qrcode进行服务正式帐户登录
  • 使用带有随机代码的帐户qrcode进行订阅官方帐户登录
  • 使用开放平台进行扩展
  • 身份验证是灵活的,关键是事件交换流程。

更多与微信开发相关的秘密技术,可以参考此article