所有相对 URL 都转换为绝对 URL

all relative URLs get converted into absolute

此问题在 Chrome 和 Firefox 中存在,但在 IE 中不存在。

我有一个 angular 应用程序。 加载某个视图后,所有使用相对路径的 xhr 请求都会转换为使用绝对路径的请求。

示例:

我导航到http://example.com/foo/#/bar

在 Chrome 我输入的开发工具中:

var xhr = new XMLHttpRequest();
xhr.open("GET", "ping", true);//or "./ping"
xhr.send();

结果是 404 错误,网络选项卡显示请求是针对 http://example.com/ping 而不是 http://example.com/foo/ping

什么可能导致此行为?

原来是流氓<base href="/">标签。