微信小程序请求tomcat服务器静态资源图片,真机调试获取失败
时间: 2023-11-25 07:06:31 浏览: 72
可能是因为微信小程序默认会对所有非HTTPS请求进行拦截,而Tomcat服务器默认是使用HTTP协议的。为了解决这个问题,你可以通过以下两种方式来解决:
1. 将Tomcat服务器配置为使用HTTPS协议,这样微信小程序就可以正常访问了。具体的配置方法可以根据你的Tomcat版本和操作系统来进行查找。
2. 在微信小程序中添加以下代码,来允许非HTTPS请求:
```
wx.request({
url: 'http://your-tomcat-server-url',
method: 'GET',
header: {
'content-type': 'image/png' // 以图片形式请求
},
success(res) {
console.log(res.data)
}
})
```
注意:在真机调试时,需要将微信小程序的开发者工具中的“不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书”勾选上,否则也会导致请求失败。
相关问题
微信小程序引用tomcat静态资源图片,真机无法显示
可能是因为你的 Tomcat 服务器没有配置跨域访问。你可以在 Tomcat 的 web.xml 配置文件中添加如下代码:
```
<filter>
<filter-name>crossOriginFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>crossOriginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
```
这段代码会启用 Tomcat 的 CORS 过滤器,允许跨域请求。请注意,这段代码会允许所有来源的跨域请求,如果你需要更多的限制,请根据实际情况进行调整。
另外,如果你的图片是通过 HTTPS 协议加载的,你还需要确保你的 Tomcat 服务器支持 HTTPS 协议,否则图片仍然无法显示。
微信小程序真机调试能够访问本地tomcat服务器的http协议图片资源吗
微信小程序是一个基于Webview的应用,可以通过网络请求访问远程服务器的资源,也可以通过本地存储的方式使用本地资源。但是,微信小程序的安全策略比较严格,不允许直接访问本地的网络资源。
如果你需要在微信小程序中访问本地的tomcat服务器的http协议图片资源,需要将图片资源上传到远程服务器并通过网络请求获取。另外,为了保障安全,微信小程序只支持HTTPS协议的网络请求,因此你需要配置HTTPS协议的tomcat服务器或者使用反向代理将HTTPS请求转发到HTTP服务器。