• 下载
  • 社区

my.ap.navigateToAlipayPage

版本要求基础库 1.10.0 及以上版本;支付宝客户端版本较低,建议做 兼容处理


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

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


示例代码

1. 使用 path 属性,通过 scheme 跳转:

  • scheme 可以理解为一种特殊的URI,格式与 URI 相同。
  • 支付宝客户端的标准 scheme 为:alipays://platformapi/startapp?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 后再传递。
my.ap.navigateToAlipayPage({
    // 例如跳转到共享单车页面,其 schema 格式为:
    // alipays://platformapi/startapp?appId=60000155&chInfo=ch_${appid},${appid} 替换为自己的16位 appid,例如:
    path:'alipays://platformapi/startapp?appId=60000155&chInfo=ch_${appid}',
    success:(res) => {
        my.alert({content:'系统信息' + JSON.stringify(res)});
    },
    fail:(error) => {
        my.alert({content:'系统信息' + JSON.stringify(error)});        
    }
})


2. 使用 appCode 属性:

my.ap.navigateToAlipayPage({
    appCode:'tinyAppSHH',
    appParams: {}
    success:(res) => {
        my.alert(JSON.stringify(res));
    },
    fail:(res) => {
        my.alert(JSON.stringify(res));        
    }
}),

/**
 *  打开支付宝扫一扫
 */
my.ap.navigateToAlipayPage({
    appCode:'alipayScan',
    success:(res) => {
        my.alert(JSON.stringify(res));
    },
    fail:(res) => {
        my.alert(JSON.stringify(res));        
    }
}),
   
/**
 *  打开蚂蚁森林
 */
my.ap.navigateToAlipayPage({
    appCode:'antForest',
    appParams: {
        autoShowProps:1 //可选参数,等1时,默认打开开启森林背包
    }
    success:(res) => {
        my.alert(JSON.stringify(res));
    },
    fail:(res) => {
        my.alert(JSON.stringify(res));        
    }
}),
    
/**
 *  打开股票详情
 */
my.ap.navigateToAlipayPage({
   'appCode':"stockDetail",
   'appParams':{
        'stockType':"ES", //股票类型,ES-个股,MRI-指数
        'market':"N", //所在市场,SH-沪市,SZ-深,A\O\N\USI - 美股市场,HK-港股市场
        'symbol':"BABA", //股票代码
        'name':"阿里巴巴" //股票名称
    },
    success:(res) => {
        my.alert(JSON.stringify(res));
    },
    fail:(res) => {
        my.alert(JSON.stringify(res));        
    }
})


入参

Object 类型,属性如下:

属性

类型

必填

描述

备注

appCode

String

是(和 path 二选一)

要跳转的支付宝官方业务,例如付款码,appCode: 'payCode',详见下方 appCode 说明。

  • 跳转支付宝扫一扫、收到的红包页面、爱攒油页面、小程序快报生活号、蚂蚁森林、蚂蚁庄园、某只股票的详情页,请使用 appCode 属性。


  • 支付宝客户端 10.1.62 版本开始支持。


  • 个人小程序暂不支持跳转付款码页面。

path

String

是(和appCode 二选一)

要跳转的支付宝业务、运营活动 schema 或 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 类型,属性如下:

属性类型描述
errorString错误码。
errorMessageString错误信息。


结果码

结果码

描述

2

参数错误,打开失败。


常见问题 FAQ


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

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

-


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