iOS微信小程序网页请求走error问题

场景:微信小程序webview外链网页

 

在Android微信网页 浏览器 iOS浏览器都是好的 但是一到iOS微信就出问题了

 

请求一直发不出去 ajax 错误码一直报 0

 

0:请求未初始化(还没有调用 open())。

1:请求已经建立,但是还没有发送(还没有调用 send())。

2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。

3:请求在处理中;通常响应中已有部分数据可用了,但是服务器还没有完成响应的生成。

4:响应已完成;您可以获取并使用服务器的响应了。

 

后来抓包检查发现:

iOS微信网页请求会自动变成https

http请求都直接变成https了 ajax就会一直走error方法 state:0

 

解决方法:

把接口全改成https就可以兼容iOS微信网页了(后端)

 

这里难点在于iOS微信网页抓包

由于ajax请求发不出去,无法抓到数据包

我们就随便填写一个url,让数据包发出去,让fiddler拦截到然后分析就可以发现问题

 

还有就是无法真机抓包的问题

我尝试过使用真机微信小程序网页抓包,结果页面无法加载出来(可能有代理检测)

后来用微信web开发工具就可以抓到包,这里选择的是小程序模式

iOS微信小程序网页请求走error问题_第1张图片

 

如果要用公众号网页抓包记得把http改成https(不改会直接请求成功,看不到错误原因了,改了之后很有可能看到https和http跨域问题)

 

iOS微信小程序网页请求走error问题_第2张图片

然后点击 设置 代理设置 手动 填写地址和端口号就可以了

关于抓包可以搜索 fiddler抓包 教程很多

 

你可能感兴趣的:(微信网页,小程序webview)