微信支付中扫码后能及时获取到服务器反馈是如何实现的?

我们在使用微信支付时基本的场景如下:
用户A(收款人)输入收款金额生成二维码,
用户B(支付人)用微信客户端扫描生成的二维码,
弹出密码框.
输入密码正确后, 用户A接收到对应的收款提示.

问题:
用户A设备之间是如何感知用户B扫码输入密码后,
服务器向用户A的提示是如何实现的?
这些推送的技术是如何做到实时的?

阅读 9k
3 个回答

像微信扫码登录、扫码支付 他们的原理基本都是一样的,都是可以通过轮询、长连接、websocket等技术来实现的,
图片描述

这是某网站的微信扫码登录,当前页面每隔几秒就会发起一个新的请求,例如当用户扫码成功以后会在服务器保存一个标识,当前页面请求时获取到了这个标识则刷新当前页面。

是使用的长轮循,你查看它二维码页面的连接信息就能看到。

如果您研究一下京东的微信扫码支付,你就会发现其实不是推送的,而是3秒一次去poll(定时查询的)。

使用我们BeeCloud可以轻松接入微信扫码支付,你可以试用一下,我们提供了查询的接口。

开发步骤是,先生成支付二维码,之后每3秒一次用查询接口去查询订单状态,知道订单变成支付,才更新前端网页的UI

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