我真的不明白这个。我有以下“获取”请求:
$.ajax( {
url: "api/getdirectories/",
dataType: 'json',
success: function ( data ) {
// Do stuff
}
} );
这是在我的登台服务器为我提供的页面中,http://atlas/Reporter
. 在我的本地开发盒上,这是可行的,并且在查看 fiddler 时,我看到了正确的 URL http://localhost/Reporter/api/getdirectories
。然而,在登台服务器上,请求是 to http://atlas/api/getdirectories
,这是无效的,我收到 404 错误。
为什么我的路径中的“报告者”部分被丢弃在登台服务器上?在查看文档时,URL、baseURI、documentURI 都是http://atlas/Reporter
,域是atlas
。与我的本地开发盒完全相同(除了它都是“localhost”而不是“atlas”。
这个问题已经困扰了我一段时间了。我想我已经弄清楚了,一切都很好,然后我又遇到了。我不认为这是同源策略问题,因为我从页面来源的同一站点请求数据。
那么,请求的完整 url 究竟是如何确定的呢?它似乎不是上面提到的被连接到我的相对 URL 上的文档变量之一......那么它是如何工作的?
Edit: Removed the '/' from the URL as it is distracting from the real issue- behavior is the same with or without it.