我有一台带有API的服务器和一个网站(该API的客户端)
当我知道服务器的IP并以XMLHTTPrequest编写IP时,它可以正常工作:
var url = "http://192.168.0.14/api"
由于我的IP不是静态的,所以我想要一个适用于任何IP的代码,所以我做到了
`var url =“ http://localhost/api”(服务器也为网站提供服务)
但是当我这样做时,我无法加载资源:net :: ERR_CONNECTION_REFUSED
允许CORS作为服务器的响应。
知道为什么会这样吗?谢谢
答案 0 :(得分:1)
因为localhost
不能解析为IP 192.168.0.14
,并且HTTP服务器无法监听解析为的IP localhost
(可能是127.0.0.1
或::1
)。
请记住,localhost
的意思是“正在运行浏览器的计算机”。 JS运行所在的HTML文档与服务器无关。 http://localhost/
是绝对 URL,而不是相对路径。
相对路径将类似于api
,而绝对路径将是/api
(相对于HTML文档所在服务器的根目录)。