【问题标题】:Can not see changes in json file in java project (jsp)在java项目(jsp)中看不到json文件的变化
【发布时间】:2016-10-19 08:05:14
【问题描述】:

我使用intellij IDEA 用jsp 制作了一个web 项目。我从“customer.json”文件中获取数据,当单击一个按钮时,我在后端更改了这个“customer.json”文件。然后我尝试再次获取数据,但它读取的是旧的 json 文件。我尝试使用以下代码禁用缓存:

  response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
  response.setHeader("Pragma","no-cache"); //HTTP 1.0
  response.setDateHeader ("Expires", 0); //prevents caching at the proxyserver

我还尝试添加具有不同名称的新 json 文件,例如“customer_1.jsp”,并从我的 jsp 中读取它,但这次我收到错误消息,即使我在其中看到也没有名为“customer_1.jsp”的文件目录。有什么问题,我该如何解决?谢谢你的帮助?

注意:我正在使用 d3.js 的数据,并使用以下代码读取它:

d3.json("{path}/customer.json", function(error, json) {
   if (error) return console.warn(error);
   data = json;
   visualizeit();
});

注意:我这里也是用 coffescript 版本写的 mu click 事件。(很容易理解):

 $(".node").live "dblclick",(e) ->
    selectedId = $(this).attr("id");
    loadData(selectedId)
    setTimeout(updateForSelected(selectedId),5000)

  loadData = (selectedId) ->
    $("#waitForUpdating").load 'DataForSelectedCustomer.jsp?id='+selectedId;

  updateForSelected = (selectedId) ->
    d3.json "customer.json", (json) ->
      myNetwork.updateData(json)

在“DataForSelectedCustomer.jsp”中,我调用了写入 json 文件的 Java 函数。

【问题讨论】:

  • 对不起,我不明白你刷新IDE目录是什么意思。它是用户交互项目,任何时候用户点击它我都应该更改整个目录吗?
  • 是的,抱歉,我在想别的事

标签: javascript java json jsp d3.js


【解决方案1】:

这是因为customer.json 文件是由您的浏览器下载的,它会一直使用本地副本。如果要刷新文件,则必须使用JQuery Ajax APIthe Fetch API 再次从后端获取它。

  1. 浏览器下载文件显示网页
  2. 您在后端更改 JSON 文件,浏览器无法读取该文件
  3. 您下载新的 JSON 文件并再次在前端使用它

【讨论】:

  • 我更新了我的问题。我想我使用这个加载函数进行了 Ajax 调用。但它仍然读取旧的 json。抱歉,我不明白下载新 Json 是什么意思?难道 d3.json("customer.json") 已经这样做了吗?
  • 是的,您会说 d3 已经这样做了,我没有使用 d3 的经验,但在我看来,该库只获取一次 JSON 文档,然后使用本地缓存文件。这就是为什么我认为如果您想查看更新,您需要再次获取它。
  • 我试过 $.getJSON( "customer.json",( json ) ->newJsonx = json 然后提醒 newJsonx 但它总是给出相同的结果。
  • 我看 chrome 的网络部分。它显示 customerç.json 没有被修改。然而确实如此。会不会和浏览器有关?如果是这样,我该怎么做才能解决它?
猜你喜欢
  • 1970-01-01
  • 2015-02-23
  • 2021-07-27
  • 1970-01-01
  • 2018-05-07
  • 1970-01-01
  • 2017-10-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多