web开发时手机浏览器无法通过ajax请求电脑本地服务器数据
- 电脑本机ip:192.168.1.102
- 电脑本地服务器:localhost:4000
- 电脑web静态服务器:localhost:8080
- 电脑和手机都连接同一个网络,因此他们都处于同一个网段,可以进行数据通信。
- 在电脑浏览器上访问web应用(比如:localhost:8080/home)时,会发送ajax请求(比如:localhost:4000/data),请求电脑本地服务器api接口数据,可以成功获得数据刷新页面,证明不存在跨域问题,但是在手机浏览器上访问相同的web应用(localhost:8080/home无法访问web页面,得换成192.168.102:8080/home)时,却无法获得数据,也就无法刷新页面,什么原因呢?
- 原因就在于电脑浏览器请求的是电脑本地服务器api接口,同样的手机浏览器请求的也是手机本地服务器api接口,请问手机上有本地服务器api接口吗,答案是肯定没有,因此问题找到了,只要把api接口地址改成192.168.1.102:4000/data,问题就解决了。