橙子坐大牢 2021-07-27 10:24 采纳率: 0%
浏览 309

支付宝登录如何把二维码内嵌到自己的页面中?

如题。官方文档上面只有跳转支付宝同意登录页面的URL拼接。请问如何把登录二维码内嵌到自己的页面中?

  • 写回答

4条回答 默认 最新

  • CSDN专家-showbo 2021-07-27 10:44
    关注

    你这个过程其实类似微信认证的服务号扫码登录差不多,二维码内容可以为支付宝授权的网址,回调网页增加一个GUID参数,因为到时用户信息要存储到application这种全局变量中完成信息共享(java不清楚是否有application,不过应该存在所有用户都可以共享的对象,注意是所有用户访问到,不是session,session只有当前访问用户访问到,和下面说的2个步骤,是2个不同的session)。

    当用户扫二维码后,会出现2个步骤
    1)手机会跳转到授权页面,授权后跳转到你的回调网址,回调页面获取guid及支付宝相关的用户信息(如user_id,支付宝唯一id,类似微信公众号的openid),判断user_id是否注册过,未注册注册或者绑定账号什么的(操作完毕后和注册过的步骤一样通过guid设置用户身份信息),如果注册过则读取用户信息通过guid值设置共享信息为此用户的相关身份信息。
    2)扫码后防止二维码的页面setInterval启动计时器+ajax轮训服务器,附带上guid值轮训服务器的共享信息,如果存在此guid的值,则设置用户身份,返回一个标记,如1表示扫码成功,然后轮训结果为1则跳转到用户后台或者上次访问页面即可。

    有帮助麻烦点个采纳【本回答右上角】,谢谢~~

    string guid=...//java生成guid的代码;
            string callback = "http://你的域名域名/oauth/alipay.ashx?guid=xxxxxxxx&op=getalipayinfo";//设置guid,op参数可以省略,不过建议加上,方便区分操作。如果省略需要判断guid不为空执行获取支付宝信息操作,否则跳转支付宝授权网址
            string url = "https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=" + AlipayConfig.app_id + "&scope=auth_user&redirect_uri=" + context.Server.UrlEncode(callback);//这个就是二维码存储的地址
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 7月27日

悬赏问题

  • ¥15 欧拉系统opt目录空间使用100%
  • ¥15 ul做导航栏格式不对怎么改?
  • ¥20 用户端如何上传图片到服务器和数据库里
  • ¥15 现在研究生在烦开题,看了一些文献,但不知道自己要做什么,求指导。
  • ¥30 vivado封装时总是显示缺少一个dcp文件
  • ¥100 pxe uefi启动 tinycore
  • ¥15 我pycharm运行jupyter时出现Jupyter server process exited with code 1,然后打开cmd显示如下
  • ¥15 可否使用carsim-simulink进行四轮独立转向汽车的联合仿真,实现四轮独立转向汽车原地旋转、斜向形式、横移等动作,如果可以的话在carsim中如何进行相应设置
  • ¥15 Caché 2016 在Java环境通过jdbc 执行sql报Parameter list mismatch错误,但是同样的sql使用连接工具可以查询出数据
  • ¥15 疾病的获得与年龄是否有关