欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

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

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

回复内容:

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

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

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

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

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

像微信扫码登录、扫码支付 他们的原理基本都是一样的,都是可以通过轮询、长连接、websocket等技术来实现的,
微信支付中扫码后能及时获取到服务器反馈是如何实现的?

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

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