100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 支付宝移动端H5授权实现自动登录

支付宝移动端H5授权实现自动登录

时间:2019-07-09 06:08:54

相关推荐

支付宝移动端H5授权实现自动登录

当用户通过支付宝打开H5页面时,避免重复登录,实现授权登录的功能

授权开发文档页面https://docs./289/105656

授权流程

在支付宝开放平台【功能信息】中点击【添加功能】,选择【获取会员信息】

然后确认支付宝的APPID,设置回调网关.

第一步:URL拼接

商户/开发者通过以下的 URL 拼接规则拼接用户授权的 URL 地址,该地址展示给用户,用户需在支付宝端点开 URL 地址,并点击授权,商户/开发者即可获得用户的授权。

url拼接规则:/oauth2/publicAppAuthorize.htm?app_id=APPID&scope=auth_user&redirect_uri=ENCODED_URL&state=自定义参数

APPID:对应自己的appid,

redirect_uri:在支付宝设置的回调网关;(只要域名一致都可以回调),值得注意的是回调地址需要encode

String realPath = req.getRequestURI() + queryString;String url = "/oauth2/publicAppAuthorize.htm?app_id="+ "自己的appid&scope=auth_user"+ "&redirect_uri="+ URLEncoder.encode("https://" + custom_wechat_domain +"/customer/alipay/getAuthCode.action", "utf-8")+ "&state="+realPath;resp.sendRedirect(url);

realPath:目标页面,也就是授权完成之后需要跳转的页面,

此处代码,是在过滤器中,如果用户的session信息为空或者userid为空,则会重定向到授权页面.

第二步:准备接收支付宝的回调

回调接口,接收auth_code和自定义参数state

然后通过auth_code,请求得到用户的userid,

得到用户的userid后存入session中,从数据库中查询是否存在该用户,如果查询结果中存在用户信息,则将用户信息存在session中,然后将目标页面重定向.

被重定向的目标页面再次经过过滤器,如果session中存在userid但是不存在用户信息,则跳转登录页面,

本次授权没有处理用户未点击授权的情况

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。