支付宝小程序API 跳转支付宝应用或页面

2020-09-16 15:50 更新

my.ap.navigateToAlipayPage

版本需求:基础库 1.10.0 或更高版本;支付宝客户端 10.1.32 或更高版本 ,若支付宝客户端版本较低,建议做 兼容处理

小程序中跳转到支付宝官方业务或运营活动页面。

小程序之间相互跳转,请使用专有接口:my.navigateToMiniProgram

注意:此 API 暂仅支持企业支付宝账户使用。

入参

Object 类型,属性如下:

属性 类型 必填 描述 备注
appCode String 是(和 path 二选一) 要跳转的支付宝官方业务,例如付款码,appCode: 'payCode',详见下方 appCode 说明。 跳转支付宝扫一扫、收到的红包页面、爱攒油页面、小程序快报生活号、蚂蚁森林、蚂蚁庄园、某只股票的详情页,请使用 appCode 属性。支付宝客户端 10.1.62 版本开始支持。个人小程序暂不支持跳转付款码页面。
path String 是(和appCode 二选一) 要跳转的支付宝业务、运营活动 scheme 或 url,如果 url 中带有参数,请务必先将整个 url 做 encode 处理。 跳转除 appCode 参数涵盖的页面,请使用 path 属性。可跳转域名以 https://render.alipay.com/p 开头的支付宝业务、运营页面。
appParams Object appCode 配套参数,需要和 appCode 搭配使用。目前已开放的跳转页面,均无需配置 appParams 参数,appParams 为 {} 即可。(见示例代码 2) 支付宝客户端 10.1.62 版本开始支持。

appCode 参数说明

入参为 Object 类型,属性如下:

appCode appParams 描述
alipayScan {} 打开支付宝扫一扫。
redPacket {} 打开收到的红包页面。
collectOil {} 打开爱攒油页面。
tinyAppSHH {} 打开小程序快报生活号。
antForest autoShowProps:是否打开背包,可空。 打开蚂蚁森林。
antFarm {} 打开蚂蚁庄园。
stockDetail stockType:股票类型,ES-个股,MRI-指数;market:所在市场,SH-沪市,SZ-深,A\O\N\USI - 美股市场,HK-港股市场;symbol:股票代码;name:股票名称,需要encode。 打开某只股票的详情页。
payCode {} 打开支付宝付款码(注意:个人小程序暂不支持跳转付款码页面。)

success 回调函数

入参为 Object 类型,属性如下:

属性 类型 描述
success Boolean 跳转成功。

fail 回调函数

入参为 Object 类型,属性如下:

属性 类型 描述
error String 错误码。
errorMessage String 错误信息。

示例代码

  1. 使用 appCode 属性:

  1. my.ap.navigateToAlipayPage({
  2. appCode:'tinyAppSHH',
  3. appParams: {},
  4. success:(res) => {
  5. my.alert({content:'成功:'+JSON.stringify(res)});
  6. },
  7. fail:(res) => {
  8. my.alert({content:'失败:'+JSON.stringify(res)});
  9. }
  10. });
  11. // 打开支付宝扫一扫
  12. my.ap.navigateToAlipayPage({
  13. appCode:'alipayScan',
  14. success:(res) => {
  15. my.alert({content:'成功:'+JSON.stringify(res)});
  16. },
  17. fail:(res) => {
  18. my.alert({content:'失败:'+JSON.stringify(res)});
  19. }
  20. });
  21. // 打开蚂蚁森林
  22. my.ap.navigateToAlipayPage({
  23. appCode:'antForest',
  24. appParams: {
  25. autoShowProps:1 //可选参数,等1时,默认打开开启森林背包
  26. },
  27. success:(res) => {
  28. my.alert({content:'成功:'+JSON.stringify(res)});
  29. },
  30. fail:(res) => {
  31. my.alert({content:'失败:'+JSON.stringify(res)});
  32. }
  33. });// 打开股票详情
  34. my.ap.navigateToAlipayPage({
  35. 'appCode':"stockDetail",
  36. 'appParams':{
  37. 'stockType':"ES", //股票类型,ES-个股,MRI-指数
  38. 'market':"N", //所在市场,SH-沪市,SZ-深,A\O\N\USI - 美股市场,HK-港股市场
  39. 'symbol':"BABA", //股票代码
  40. 'name':"阿里巴巴" //股票名称
  41. },
  42. success:(res) => {
  43. my.alert({content:'成功:'+JSON.stringify(res)});
  44. },
  45. fail:(res) => {
  46. my.alert({content:'失败:'+JSON.stringify(res)});
  47. }
  48. });
  1. 使用 path 属性,通过 scheme 跳转:

  • scheme 可以理解为一种特殊的URI,格式与 URI 相同。
  • 在 scheme 中配置的启动参数需要与 appId 同级,如果启动参数的值包含特殊字符,必须注意需要经过 encode 后再传递。

  1. my.ap.navigateToAlipayPage({
  2. // 例如跳转到共享单车页面,其 scheme 格式为:
  3. // alipays://platformapi/startapp?appId=60000155&chInfo=ch_${appid},${appid} 替换为自己的16位 appid,例如:
  4. path:'alipays://platformapi/startapp?appId=60000155&chInfo=ch_${appid}',
  5. success:(res) => {
  6. my.alert({content:'系统信息' + JSON.stringify(res)});
  7. },
  8. fail:(error) => {
  9. my.alert({content:'系统信息' + JSON.stringify(error)});
  10. }
  11. })

错误码

错误码 描述 解决方案
2 参数错误,打开失败。 检查 H5 页面链接地址 scheme 或 URL 是否有误。检查 appCode 入参是否有空格、是否填写有误。path 和 appCode 二选一,必填。可跳转域名以 https://render.alipay.com/p 开头的支付宝业务、运营页面(生活号文章链接等)。部分支付宝运营、业务页面目前暂不开放跳转
4 无权限调(N22104)。 个人小程序应用没有开放 my.ap.navigateToAlipayPage 能力。

常见问题 FAQ

使用 my.ap.navigateToAlipayPage 是否可以跳转基金页面?

my.ap.navigateToAlipayPage 暂不支持跳转基金页面。

使用 my.ap.navigateToAlipayPage 打开 H5 页面为何提示“参数错误,打开失败”?

可能原因 解决方案
H5 页面链接地址有误。 修改错误 H5 页面链接。
部分支付宝运营、业务页面目前暂不开放跳转。 -

使用 my.ap.navigateToAlipayPage 跳转生活号文章有一个过渡空白过程,是否正常?

是正常的,属于正常加载流程。

香港支付宝小程序支持"跳转支付宝应用或页面 " my.ap.navigateToAlipayPage 吗?

针对国际业务的特殊性,支付宝有专门的团队支持,香港版小程序咨询请点击以下链接进行咨询:https://global.alipay.com/open/faq.htm

其他有关跳转问题的解答,请参见 小程序跳转 FAQ

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号