[HPM] Error occurred while trying to proxy request api from a to b(ENETUNREACH);接口报错500

目录

一、问题

二、原因及解决方法

三、总结


tiips:如嫌繁琐,直接移步总结即可!

一、问题

        1.npm run dev运行项目时,编译器控制台报错:[HPM] Error occurred while trying to proxy request /uaa/token from 10.13.0.26:8081 to http://0.13.0.30:7311/dss/ (ENETUNREACH) (https://nodejs.org/api/errors.html#errors_common_system_errors);接口报错500

        2.真是奇怪呀,之前都好好的,怎么今天只改了一下ip地址就报错。 ENETUNREACH大概意识是:网络不可达;报错就是:proxy代理请求时,发现地址b不可达。

        3.本来不想管的,因为大部分500的错误都是服务器(后端)有问题,但是后端说他没有问题,我也感觉很奇怪,之前编译器控制台都不会有报错呀,所以不得不排查。

二、原因及解决方法

       1.原因:proxy代理中的target有部分地址写错了 ~##~  少了一个双引号

                   项目原本写的代理是从这个变量截取了一部分。少了双引号截取到的结果ip地址就少了一部分,如上面报错:我想访问的服务器是; http://10.13.0.30:7311/dss/r,结果变成了 http://0.13.0.30:7311/dss/。

        最终导致proxy代理错误:本来接口请求应该是http://10.13.0.30:8081/api/uaa/token,现在的请求地址却是:http://10.13.0.26:8081/api/uaa/token

          诶呀,target地址有一部分是外部配置的,以前修改的时候都是复制过来,再修改ip为我想要连接的地址就可以了。

        今天意外的没有复制,自己写了一行,结果出问题了。

2.解决方法

        添加双引号:API_ROOT:'"10.13.0.30:7311/dss/r"'

三、总结

        1.看来写代码也要入乡随俗呀,否则可能因为一个双引号、一个空格等小问题引起难以预料的大问题

        2.我很好奇,为啥前面的人要这样写,直接一个字符串不就可以了,也没有其他地方用到呀。而且亲测proxy配置不截取字符串,直接配置API_ROOT为字符串是没有问题的;如有大佬知道,欢迎评论区告知!

        3.proxy代理报错ENETUNREACH一般是 proxy target地址有误,请仔细检查target是否写对了TIMEOUT有可能是proxy target地址有误,或者请求的服务器没有打开

/*

希望对你有帮助!

如有错误,欢迎指正,非常感谢!

*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值