POST http://xxx net::ERR_NAME_NOT_RESOLVED 解决

 

测试环境启动后,项目A前端访问项目B某接口报错 net::ERR_NAME_NOT_RESOLVED,F12,切到Network看到接口状态如下:

切换到Console看到状态如下:

怀疑是项目A、B服务器网络不通的问题,结果运维同事在项目A服务器上curl 项目B的接口,返回200,说明网络是通的。。。

百思不得其解,网上各种查询也没有相关答案, 还以为是Docker机器里DNS解析的问题,,,
纠结了一下午,忽然想清楚了,在项目A服务器上curl 项目B的接口,返回200,说明项目A、B服务器是通的。而我在本机访问项目A,再在项目A中访问项目B,这就要好好考虑清楚了:

方式一:如果我本机是通过项目A转发到项目B,那么肯定是没问题的,因为我本机到项目A是通的,项目A到项目B也是通的。

方式二:如果我本机通过项目A重定向到项目B,那么就要看我本机到项目B是否是通的了。

此处我本机是通过项目A的js文件里配置的地址直接访问了项目B,也就是上面的方式二,中间并未经过项目A转发,所以一切就明了了:我本机到项目B不通,导致报错 net::ERR_NAME_NOT_RESOLVED

此处用的是测试环境内网域名,所以修改我本机host文件(C:\Windows\System32\drivers\etc\hosts)添加上项目B服务器IP和内网域名的映射:

再次访问,

200 OK

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值