相对URL在节点中无法与axios一起使用

时间:2018-10-23 11:08:16

标签: javascript node.js http url relative-path

在我的节点服务器上,以下代码有效

axios.get('http://localhost:8080/myPath') // works

但是相对路径无效

axios.get('/myPath') // doesn't work

我收到此错误:

  

消息:“连接ECONNREFUSED 127.0.0.1:80”端口:80

如何像浏览器一样获得相对的url工作?

相对路径应该在8080端口而不是80端口上。

我在节点服务器上的哪里设置?

2 个答案:

答案 0 :(得分:2)

在这种情况下,您不能使用相对URL,因为它没有相对关系-您正在服务器上运行的脚本中执行代码,而不是在浏览器中执行。它没有相对于“当前” URL的任何概念。

您需要明确指定完整的域名和端口。如果这导致您遇到问题(例如,因为要在不更改代码的情况下将其部署到其他主机),则必须以其他方式(例如,通过读取配置文件)将值注入代码中。

答案 1 :(得分:2)

使用自定义配置创建新实例。像下面一样

  

var instance = axios.create({      baseURL:“ http://localhost:8080”   });

     

instance.get('/ myPath',{     超时:5000   });

希望,这会起作用 参考:https://www.npmjs.com/package/axios

相关问题