我的开发环境的 URL 是:
http://localhost/mysite/blah...
我正在使用 jQuery 和 getJSON 在我的网站上执行一些 ajax 操作,当我将 url 指定为:
/mysite/controller/action
..但这并不理想,因为我不想将我的开发 url 硬编码到我单独的 jQuery 包含文件中。
当网站上线时,可以使用controller/action或/controller/action作为url,因为这样就可以解析,但对于开发网站来说,这是不行的。
我已经尝试过:
controller/action
..但这会返回 404,这让我感到惊讶,因为我认为 url 前面缺少/会阻止查看网站根目录。
一定有一个巧妙的解决方案吗?
最佳答案
我会通过在 HTML header 中插入一个全局常量来实现此目的:
<script type="text/javascript">
var BASE_URL = '/mysite/';
</script>
这将从您的服务器插入,以便可以动态更改。 稍后在您的脚本中,您将能够使用(此处为 jQuery 样式)发出 AJAX 请求:
$.ajax( BASE_URL + '/controller/action', ...);
关于url - jQuery getJSON Ajax 方法中的相对 Url 损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7256872/