浏览器调起微信支付后,怎么把浏览器uid和微信wxuid关联起来?

需求说明:

  1. 在浏览器通过uid,accessToken生成订单id,最后唤起微信支付
  2. 在微信中支付完成后,浏览器就可以查看付费内容
  3. 同时,关注公众号微信号,在我的历史记录中也可以看到这个付费内容

问题

浏览器账号和微信wxuid,两个账号是怎么关联在一起的?

我的思考:

浏览器调起微信支付,和微信支付完成回到浏览器,两端都不能提前获取到对方的信息(uid,wxuid),相当于两端不能进行通讯;
要让两端实现通讯,要获取设备唯一标识符,但是h5是获取不到设备唯一标识符号的,
前端可以通过IP+设备信息,生成设备指纹来实现账号绑定;

操作流程

一、浏览器中
生成订单ID时,把uid和设备指纹绑定在一起

二、微信中打开我的记录页面
通过设备指纹找到数据库所有未关联微信公众号的uid,把这个uid合并到此微信账号下(一个微信账号可以合并多个uid信息)

产生的其他问题:

  • 如果用户在未绑定前切换了网络,ip发生了变化,唯一标识符就不准了;
  • 后端改动较大
阅读 3.7k
2 个回答

订单id 和 uid是绑定的,
订单id的支付回调 和 微信的openId是绑定的
所以通过订单id就把uid和openId关联起来 ;
用户信息关联的操作,不在前端,而在后台;
当用户支付完成,微信回调openId回来的时候,要存在数据库中;

clipboard.png

参考资料:
微信h5支付文件:https://pay.weixin.qq.com/wik...

要关注微信后再让用户手动绑定,你看哪个公众号是能自动关联第三方账号的的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题