PC 页面接入支付宝登录,直接跳转 https://openauth.alipay.com/oauth2/publicAppAuthorize.htm 传入 app_id、scope 和回调地址即可。
但是在移动端打开 H5 时,跳转登录会提示”请在支付宝客户端打开链接”。
根据支付宝开放平台官方文档的内容,H5 需要通过 scheme 或者 JSAPI: startApp 来启动支付宝 APP 进行登录。
通过scheme启动
scheme可以理解为一种特殊的URI,格式与URI相同
支付宝客户端的标准scheme为:alipays://platformapi/startapp?appId=
appId即为H5App自身的appId,但如果是某些运营页之类的单独页面,没有自己的appId,可以使用Nebula容器的通用浏览器模式appId=20000067 来启动,同时将需要打开的H5页面url经过encode编码后设置到url参数内,例如:alipays://platformapi/startapp?appId=20000067&url=http%3A%2F%2Fm.taobao.com
在scheme中配置的启动参数需要与appId同级,如果启动参数的值包含特殊字符,必须注意需要经过encode后再传递。
通过JSAPI: startApp接口启动
通过JSAPI: startApp接口,也可以启动一个H5App, 它相对于scheme的优势在于它可以在启动新的H5App时,可通过closeCurrentApp入参来同时关闭自身,用于某些特定的业务场景。
但是会有一个问题,就是不能跳转回浏览器,新页面在支付宝内打开。
本文来源:程序之心,转载请注明出处!
最新内容
© 2016 - 2024 chengxuzhixin.com All Rights Reserved.