安卓手机打开小程序提示“不支持打开非业务域名 http://...”
发布于 7 年前 作者 ofu 4309 次浏览 来自 问答

和手机型号和操作系统应该没有太大关系,我们公司所有安卓机都可以复现这个现象,包括华为p30、华为MatePad Pro、小米10、红米k20pro。

与此同时,在开发工具中测试是完全没有问题的,iOS设备(包括iphone和ipad)也从来不会触发这个问题。

可以访问我们的小程序复现(墨墨出品的《词汇量测试》),我们已经排查很久了,在代码里面没有任何http请求,而且我们的TLS SSL 配置也都是没问题的

因为在调试模式下无法触发这个问题,抓包也没有什么有用的信息,请问我们应该怎么进行下一步调试?我怎么知道应用试图访问哪个接口的时候爆出的这个错误?

2 回复

你这是http不支持的,将所有的http资源换成https,并且是要在后台已经设置的业务域名。

这个问题已经解决了!!非常感谢一楼的10同学提供的帮助,我也应该为自己不友善的语气感到万分的惭愧,这个bug我们两个开发已经花了50小时在上面,所以有点烦躁,真的很对不起。。。Orzzzzzzz

下面这段是错误代码,他在我们的index.wxml里面

 <web-view src="https://voctestcanary.maimemo.com/app?" bindmessage="onMessage"></web-view>

改为:

 <web-view src="https://voctestcanary.maimemo.com/app/?" bindmessage="onMessage"></web-view>

就可避免这个问题。以前的前端代码(angular)收到请求后会返回一个307给我们,重定向后的url里面的https变成了http,在浏览器里这个行为无法重现,微信小程序才会发生。。。。

再次对坚持不懈的10同学表示感谢!!!!

回到顶部