Javascript 如何存储用于进行ajax调用的URL

Javascript 如何存储用于进行ajax调用的URL,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我有一个javascript文件,它使用与下面类似的代码对我的服务器进行许多ajax调用: var url = "/api/read"; $.ajax({ type : 'GET', url : url, async : false, success : function(data) { } }); 有没有办法将所有URL存储在某个地方,这样我就不需要在javascript文件中使用硬编码URL?比如,我有一个对某个文件/任何东西的引用,它允许我访问所有可以用来进行ajax调用的URL

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

var url = "/api/read";
$.ajax({
type : 'GET',
url :  url,
async : false,
success : function(data) {
  }
});
有没有办法将所有URL存储在某个地方,这样我就不需要在javascript文件中使用硬编码URL?比如,我有一个对某个文件/任何东西的引用,它允许我访问所有可以用来进行ajax调用的URL


谢谢

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

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) {}
});

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

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) {}
});
如果你想存储一些数据,你可以使用localStorage,好的方面是,即使在刷新页面后也可以使用这些数据,但坏的方面可能是,根据需要,这些数据存储在浏览器中,因此如果你在chrome中保存了URL,那么你就无法从firefox访问它们

但是,如果希望在删除页面选项卡或关闭浏览器时删除数据,则可以使用sessionStorage,但它同样存储在浏览器中

如果您想存储一些数据,可以使用localStorage,好的是,即使在刷新页面后也可以使用这些数据,但坏的是,根据需要,这些数据存储在浏览器中,因此如果您在chrome中保存了URL,则无法从firefox访问它们


但是,如果希望在删除页面选项卡或关闭浏览器时删除数据,则可以使用sessionStorage,但它同样存储在浏览器中

创建一个全局变量

  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) {}
});

创建一个全局变量

  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) {}
});

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


如果您不需要javascript,也可以使用json。

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


如果您不需要javascript,也可以使用json。

您可以使用javascript对象,如下所示:

var urls = {
    "readData" : "/api/read",
    "writeData" : "/api/write",
    "urlName" : "/api/update"
};
并将其用作:

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

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

var urls = {
    "readData" : "/api/read",
    "writeData" : "/api/write",
    "urlName" : "/api/update"
};
并将其用作:

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

当然,您可以将此类列表存储在单独的文件中。但是您必须执行额外的AJAX请求才能加载列表。当然,您可以将此类列表存储在单独的文件中。但是您必须执行额外的AJAX请求才能加载列表。在发布之前查看答案如果我有一个xyz.json文件,其中包含{readData:/api/read}如何在javascript文件中引用和读取此内容以获取readData url?使用ajax get请求服务器并将json存储在变量中。你应该只做一次,而不是每次你需要一个url。然后,您可以通过myUrls.readDataI访问您的URL。我确实发出了GET ajax请求来加载我的.json文件。console.logdata正确地为我提供了json文件内容。但我无法从数据中读取键值对。这是我的代码:success:functiondata{url=data;console.logdata;console.logurl.key;},console.logdata o/p是{key:value}这对我来说很有效:$.ajax{type:'GET',dataType:json,contentType:'application/json;charset=utf-8',url:urlToJson,success:function-json{var-urls=json;console.logurls.geturl;};谢谢!这个有效!URL变量可以在整个javascript页面上访问?我的意思是,我可以在页面加载时对这个json文件执行GET请求并读取java脚本文件的任何其他函数中的键值吗?如果我有一个xyz.json文件{readData:/api/read}如何在我的javascript文件中引用和读取此内容以获取readData url?使用ajax get请求服务器并将json存储在变量中。您应该只执行一次,而不是每次需要url时。然后您可以访问url by myUrls.readDataI确实发出了GET ajax请求以加载.json文件。console.logdata正确地为我提供了json文件内容。但我无法从数据中读取键值对。以下是我的代码:成功:functiondata{URL=data;console.logdata;console.logurls.key;},console.logdata o/p是{key:value}这对我有用:$.ajax{type:'GET',dataType:json,contentType:'application/json;charset=utf-8',url:urlToJson,success:function json{var url=json;console.logurl.geturl;};谢谢!这个成功了!URL变量可以在整个javascript页面上访问吗?我的意思是我可以简单地对这个j执行GET请求吗 son文件onceon页面加载并读取java脚本文件的任何其他函数中的键值?