url - jQuery getJSON Ajax 方法中的相对 Url 损坏

标签 url jquery getjson

我的开发环境的 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/

相关文章:

javascript - getJSON() - 如何删除数据参数前面的 AND 符号?

javascript - 使用什么事件来触发将 JSON 内容插入到现有 HTML 标记中?

javascript - window.location.hash 的编码

java - 如何在android中用%20替换 ""

javascript - 如何调用外部url?

javascript - Stickit 不保存自动完成字段中的值

带有 jQ​​uery SimpleModal 和 Ajax.BeginForm Helper 的 ASP.NET MVC

url - SEO 策略 : Directory, 独立域,还是子域?

javascript - 谷歌网络应用 : How to dynamically pass array values to jquery script

C++ REST (Casablanca) - web::json::value 没有名为 'field_map' 的成员