关于微信小程序web-view中H5页面使用百度或腾讯地图出现不支持非业务域名坑爹问题终极解决方案!

如题所述

在开发微信小程序时,遇到了一个棘手问题:在使用web-view组件跳转到H5页面时,如果该页面包含百度或腾讯地图的API,会收到不支持非业务域名的错误提示。经过深入研究和实践,我找到了一种解决方案,可以同时满足业务需求和避免错误提示。

我使用的是mpvue进行小程序的开发,尽管如此,这个问题与使用原生小程序开发时面临的情况并无本质区别。

解决步骤如下:

1. 当使用web-view组件进行页面跳转时,务必注意路由中的哈希模式(#号)。如果不进行相应的编码处理(如使用encodeURIComponent),可能会导致跳转失败。同样地,解码操作(decodeURIComponent)也需正确实施,以确保H5页面能够正确加载。

2. 在H5页面的代码中,引入了百度或腾讯地图的API。然而,微信小程序跳转到该页面时,会提示不支持非业务域名。尽管网上有建议将地图域名添加至微信小程序后台的请求配置中,但该方法并未解决问题。于是,我在H5页面的代码中添加了判断逻辑,以识别微信环境。在微信环境下,不加载地图API,以避免错误提示。

3. 我在H5页面代码中创建了专门的文件夹和JS文件,分别用于封装百度地图(BMap.js)和腾讯地图(TMap.js)的逻辑。通过这种方式,可以在微信环境下跳过地图API的引入,从而避免错误提示。

4. 为了确保解决方案的灵活性,我将处理逻辑集成到H5页面的特定文件中,这些文件在需要使用地图功能时被调用。这样,在小程序跳转到H5页面时,地图功能将不会被调用,但在实际应用中,会逐步将所有功能集成至小程序内,以实现更紧密的集成和更好的用户体验。

通过上述方法,不仅解决了微信小程序与H5页面集成过程中遇到的地图API支持问题,也确保了产品的正常运行和用户体验。虽然这是一个临时解决方案,但随着项目的发展,我们会逐步优化,将更多功能集成至小程序中,以提供更高效、无缝的用户体验。
温馨提示:内容为网友见解,仅供参考
无其他回答

关于微信小程序web-view中H5页面使用百度或腾讯地图出现不支持非业务域...
1. 当使用web-view组件进行页面跳转时,务必注意路由中的哈希模式(#号)。如果不进行相应的编码处理(如使用encodeURIComponent),可能会导致跳转失败。同样地,解码操作(decodeURIComponent)也需正确实施,以确保H5页面能够正确加载。2. 在H5页面的代码中,引入了百度或腾讯地图的API。然而,微信小程序...

小程序使用web-view无法打开该H5页面不支持打开的解决方法
首先,web-view用于在小程序中嵌入外部网页,但安全策略可能限制了某些页面的加载。可能是由于小程序对隐私和安全的保护,限制了某些H5页面的访问,或是H5与小程序环境的兼容性问题。解决此问题的步骤如下:检查小程序的域名配置,确保在微信公众平台后台的开发设置中,已合法添加H5页面的域名到白名单。确认...

微信小程序嵌入H5页面(web-view)的方法详解
微信小程序内置的web-view组件类似于HTML页面中的iframe,可以在微信小程序中打开一个H5页面。官网描述了web-view组件的功能,它是一个承载网页的容器,会自动铺满整个小程序页面,但个人类型的小程序不支持使用该组件。因此,使用web-view组件必须是在企业号小程序中。使用web-view组件需要配置业务域名。在...

微信小程序web-view缓存问题及解决方案
1、首先通过web-view访问我们的h5页面,通过web-view的调试工具,查看入口html文件的内容,如下: 2、修改入口html文件内容 如:在html的head中新增一个meta标签<metaname="description"content="测试缓存"\/> 3、将h5重新发布 此时,再通过小程序web-view访问该页面,同样通过调试工具查看页面代码。发现head中没有我们新添...

微信小程序web-view页面无法显示
众所周知微信的WebView有很强的缓存保护机制,当你第一次访问页面报错后 就算修改了线上的H5页面再去访问也是照样空白 怎么解决呢?其实很简单,WebView的缓存机制都是通过链接缓存的给链接后面加一个时间戳或者其他的随机字符串就OK啦

uniapp中微信小程序与H5相互跳转以及传参详解(webview)
5.特别提示,只有认证过的企业账号才能在手机上真机调试正确跳转过去,个人账号现在不支持这功能,会报提示web-view不支持打开非业务域名请重新配置,参考文章:https:\/\/www.jb51.net\/article\/260762.htm 到此这篇关于uniapp中微信小程序与H5相互跳转以及传参的文章就介绍到这了,更多相关uniapp 小程序...

微信小程序web-view , 嵌入H5页面
支持小程序的web-view可以唤醒微信支付 总结: 个人见解: 微信内置浏览器, 打开微信公众号H5页面,也可以唤醒微信支付。微信小程序里面web-view相当于小程序的内置浏览器,暂时不支持唤醒微信支付。虽然小程序是在微信里面,但是web-view又和微信内置浏览器不同~ 感觉微信想把小程序独立出来~

微信小程序使用webview嵌套手机上出现导航标题闪一下丢了
以下解决方法:1、检查代码逻辑:确保在webview嵌套的页面中,没有进行导航标题的重复设置或刷新操作。2、使用自定义导航栏:可以尝试使用小程序的自定义导航栏功能,将导航标题设置为自定义的样式。3、检查页面加载方式:确保webview嵌套的页面在加载时,使用合适的加载方式。

微信京东修改绑定手机不支持打开非业务域名
原因:个人类型与海外类型的小程序暂不支持使用web-view。如果你不是个人类型或者海外类型的话,在开发设置里面就可以添加业务域名个人类型或者海外类型视图,添加了业务域名就可以奔放了。微信小程序,小程序的一种,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一...

微信小程序web-view与H5 通信方式探索
为什么需要混合开发小程序WebView基本用法用法:在web-view网页中,可以使用JSSDK 1.3.2提供的接口返回小程序页面。支持的接口有:Bug & Tip:小程序与H5通信方式 方式一:小程序->H5 通过URL拼接参数 方式二:H5->小程序wx.miniProgram.postMessage api实现 优点:接入成本低 缺点:向小程序发送消息...

相似回答
大家正在搜