如何存储用于进行ajax调用的网址

时间:2016-04-06 09:10:41

标签: javascript jquery html ajax

我有一个javascript文件,使用类似下面的代码对我的服务器进行许多ajax调用:

var url = "/api/read";
$.ajax({
type : 'GET',
url :  url,
async : false,
success : function(data) {
  }
});

有没有办法将所有网址存储在某处,以便我不需要在我的javascript文件中使用硬编码的网址?有点像,我有一些文件/任何东西的参考,让我可以访问我可以用来进行ajax调用的所有网址?

由于

5 个答案:

答案 0 :(得分:3)

创建全局变量

  var url = {
    read:"/api/read",
    write:"/api/write/",
    more:"/api/more/"
   }

$.ajax({
  type: 'GET',
  url: url.read,
  /* this gives the first url - "/api/read" */
  async: false,
  success: function(data) {}
});

答案 1 :(得分:1)

如果你想存储一些数据,你可以使用localStorage,好的是,即使在刷新页面后也可以使用这些数据但是坏事(可能是,取决于要求)是,该数据存储在浏览器中,因此,如果您已将文件保存在chrome中,则无法从Firefox访问它们。

但是,如果您希望在删除页面标签或浏览器关闭时删除您的数据,则可以使用sessionStorage,但它会再次存储在浏览器中。

答案 2 :(得分:0)

您可以使用JavaScript数组存储您的所有网址。根据这样的索引访问它们。

var url = ["/api/read", "/api/write/", "/api/more/"]

$.ajax({
  type: 'GET',
  url: url[0],
  /* this gives the first url - "/api/read" */
  async: false,
  success: function(data) {}
});

答案 3 :(得分:0)

是的,你可以。您可以将所有网址存储在单独的javascript文件中,并将其用作常量。

如果你不想要一个javascript,你也可以使用json。

答案 4 :(得分:0)

您可以按如下方式使用JavaScript对象:

var urls = {
    "readData" : "/api/read",
    "writeData" : "/api/write",
    "urlName" : "/api/update"
};

并将其用作:

$.ajax({
  type: 'GET',
  url: urls.writeData,
  .
  .
  .