我的编程空间,编程开发者的网络收藏夹
学习永远不晚

支付宝小程序跳转第三方H5页面

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

支付宝小程序跳转第三方H5页面

支付宝小程序跳转第三方H5页面

基础API跳转

web-view

支付宝小程序想要跳转H5页面,之前只用过 web-view,内嵌H5,这种方式需要配置域名白名单,并且在外链域名的根目录放置校验文件,H5不是自有页面的话,就不能这样去实现。

 <web-view    class="lazy" data-src="https://render.alipay.com/p/s/web-view/index"    onMessage="onmessage"> web-view>

my.ap.openURL

相对于 web-view,还有一种跳转H5的方式, my.ap.openURL,不需要配置域名,但是非支付宝官网页面只有部分符合开放类目的小程序可以使用,且需要到开放平台配置 openURL 白名单。已知目标页面的 URL 或 scheme,可以使用 my.ap.openURL。
跳转到支付宝官方 H5 页面是不需要配置白名单的。

  • https://render.alipay.com/p/ 开头的 URL。
  • https://ds.alipay.com/?scheme= 开头的 URL。
my.ap.openURL({  // 请将 url 替换为后台加白过的跳转地址  url: 'https://please.replace.me/page',  success: (res) => console.log('openURL success'),  fail: (err) => my.alert({ title: 'openURL fail: ' + JSON.stringify(err) })});

web-view 和 my.ap.openURL 两者比较

两者都有不同的权限要求,下面是从文档拷过来的优劣对比表格,可以对照着选用合适的方式。

跳转方式优势劣势
内嵌H5页面,使用 web-view 内嵌H5流量归属于小程序本身。不限行业,无需审批。可以在H5页面上调用部分小程序的接口能力。需要完成 H5域名配置
外跳H5页面,使用 my.ap.openURL 外跳H5无需H5域名配置。可以免审跳转支付宝官方H5运营页面。流量不再归属于小程序本身。跳转到非支付宝官方页面只针对部分行业开放,并且需要完成平台侧审批流程(官方H5运营页面无此限制)。

my.ap.navigateToAlipayPage

my.ap.navigateToAlipayPage 是用于跳转到支付宝官方业务或运营活动页面的 API。这里利用不需要配置白名单的域名和scheme语法可以实现跳转。

// 支付宝客户端的标准scheme为:alipays://platformapi/startapp?appId=H5App自身的appId// 但如果是某些运营页之类的单独页面,没有自己的appId,// 可以使用Nebula容器的通用浏览器模式appId=20000067 来启动,// 同时将需要打开的H5页面url经过encode编码后设置到url参数内const url = 'https://www.baidu.com';// https://render.alipay.com/p/ 不需要配置白名单// 开了个后门,在不需要配置白名单的链接后面拼上自己的链接const link = 'https://render.alipay.com/p/s/i/?scheme=' + encodeURIComponent('alipays://platformapi/startapp?appId=20000067&url=' + encodeURIComponent(url));my.ap.navigateToAlipayPage({  path: link});

JSAPI跳转

JSAPI 是支付宝钱包提供的丰富的原生API功能,开发者可以使用它们方便调用支付宝提供的各种能力,达到媲美原生应用的体验,如页面跳转,支付功能等。
其中有一个跳转页面的API,pushWindow,用来打开一个新的页面,系统自带转场动画。

注意点

  • scheme 跳转请尽量使用 location.href 而不是 pushWindow。用 schema 的方式打开页面已经禁止使用,仅用于向下兼容老业务。
  • 与 location.href 的区别,pushWindow 类同于 PC 浏览器的新开标签页,每个 window 都是一个新的标签页,因此原页面仅仅是被压到后台,状态始终保持,JS 也会继续运行。location.href 则是在当前标签页直接跳转。

JSAPI是给H5使用的,而不是支付宝小程序。
现有的功能代码这样使用,应该是因为白名单限制,基础API中的前两种方式都不适合,才被迫使用JSAPI和禁止使用的scheme的。navigateToAlipayPage 是最近新发的文章里才看到可以支持支付宝小程序跳转H5连接(无需添加白名单) 。但是 navigateToAlipayPage 也已经不维护,而是用 openURL 替代。

my.call('pushWindow', {  url: `alipays://platformapi/startapp?appId=20000067&url=${encodeURIComponent(   'https://xxxx')}`});

在小程序直接使用https链接会导致页面访问受限,无法打开,用scheme的方式可以跳过限制。但是不应该这么做,只是单纯的记录一下有这种操作。

startApp

需要申请startApp权限,可以跳转任意URL

my.call('startApp', {  appId: '20000067',  param: {    url: 'https://xxx'  }});

总结

综上,跳转方式需具体情况具体分析,选择能力范围内最适合的方式,尽量不要选择禁用和停止维护的方法。这里不讨论支付宝官方页面,对自己人并没有太多限制。

跳转方式适用范围
web-view方便在H5根目录下放置校验文件
my.ap.openURL在限制类目范围内
my.ap.navigateToAlipayPage无限制,但是此API已停止维护
pushWindow无限制,但是pushWindow 禁止使用scheme的方式打开页面
startApp可以申请到支付宝的startApp权限,很难

扩展: 小程序scheme链接介绍

来源地址:https://blog.csdn.net/stupid_muscleman/article/details/128640722

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

支付宝小程序跳转第三方H5页面

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

H5页面跳转小程序的三种方式

文章目录 前言一、web-view标签返回小程序1.小程序启动页面只写web-view标签跳转到授权页面。2.编写auth.html3、把auth.html放到服务器就可以测试访问,打开小程序默认进入启动页面中的webview跳转到
2023-08-16

跳转微信小程序和支付宝小程序

跳转微信小程序和支付宝小程序 1. 微信小程序 参考链接 获取微信小程序 URL Scheme 1.1 获取小程序连接 这里需要获取长期有效的 Scheme,方式如下: 联系小程序开发者其他渠道 示例 小程序 Scheme : 测试地址,可
2023-08-16

H5页面跳转到小程序的几种实现方法

第一种:通过 URL Scheme 可以通过服务端接口或在小程序管理后台「工具」-「生成 URL Scheme」入口可以获取打开小程序任意页面的 URL Scheme 使用示例 服务端配置好接口,客户端调用接口传入目标小程序的path路径
2023-08-17

小程序的页面跳转方式

102. 小程序的页面跳转方式 小程序是一种快速发展的应用形式,为用户提供了便捷的功能和交互体验。其中,页面跳转是小程序中常用的功能之一,本文将介绍小程序的页面跳转方式,并提供代码示例,帮助读者更好地理解和实现页面跳转。 一、小程序页面跳转
2023-08-20

从H5页面跳转到小程序的实现方案有哪些

本篇内容主要讲解“从H5页面跳转到小程序的实现方案有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“从H5页面跳转到小程序的实现方案有哪些”吧!实现方案实现H5跳转小程序的方案目前有多种,可以
2023-06-28

小程序支持哪些类型的页面跳转

小程序支持以下类型的页面跳转:跳转到 tabBar 页面:使用 wx.switchTab 方法可以跳转到 tabBar 页面。跳转到非 tabBar 页面:可以使用 wx.navigateTo 或 wx.redirectTo 方法跳转到非
小程序支持哪些类型的页面跳转
2024-04-17

vue实现微信公众号h5跳转小程序的示例代码第1/3页

本文主要介绍了vue实现微信公众号h5跳转小程序的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2022-11-13

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录