此处默认你说的socket为webSocket,因为没必要做那么麻烦啊。 ajax 扫码登陆 用户 A 访问服务器,服务器为这个会话生成一个全局唯一的ID并生成二维码,此时系统并不知道访问者是谁。 用户 A 打开自己的手机扫描这个二维码并确认登录。 手机上将账户信息和 ID 一起提交到服务器 服务器将这个 ID 和用户 A 的绑定在一起,并通知网页(这里的是网页向服务器询问是否登陆成功),这个 ID 对应的账户为用户 A,网页加载用户 A 的微信信息,至此,扫码登录全部流程完成。 webSocket 扫码登陆 用户 A 访问服务器,服务器为这个会话生成一个全局唯一的ID并生成二维码,此时系统并不知道访问者是谁,并且与网页建立起webSocket连接。 用户 A 打开自己的手机扫描这个二维码并确认登录。 手机上将账户信息和 ID 一起提交到服务器 服务器将这个 ID 和用户 A 的绑定在一起,并通知网页(webSocket向网页发送消息),这个 ID 对应的账户为用户 A,网页加载用户 A 的微信信息,至此,扫码登录全部流程完成,webSocket关闭。
应该是通信流程