如何使用 javascript 静默下载

How to download silently with javascript

我是 javascript 的新人,我在完成 activity...

时遇到了一些困难

我需要在客户端处理上传到 "special" 服务器的信息,如下所示:

http://www.uninorte.edu.co/documents/71051/11558879/ExampleData.json/0a635cdd-ccdd-4a1c-8c88-b53bea431458

我想在主内存中加载它,浏览器不显示显式下载。

我尝试使用一些解决方案,但我真的不知道如何着手实现它。

...先谢谢大家

(我不是英语母语,写得不好请见谅)

[已解决]

我决定,目前,使用 Whatever Origin 服务,returns 我可以用 $.getJSON "Without download" 文件阅读一些东西。

结果:

<script type="text/javascript">
      $.getJSON('http://whateverorigin.org/get?url=' + "http://www.uninorte.edu.co/documents/71051/11558879/ExampleData.json/0a635cdd-ccdd-4a1c-8c88-b53bea431458" + '&callback=?', function(data){
        alert(data.contents);
      });
 </script>

谢谢大家的回复,真的是给了我灯才解决的

关于无声部分

您的浏览器始终知道从 JS 发出的网络请求。因此,用户始终可以通过打开开发者工具看到所有的请求和响应。


现在开始将远程 json 加载到客户端的内存中

既然你说你是JS的新手,我会介绍最基础的,所以如果你已经知道了,请多多包涵

您需要使用 XMLHttpRequest 进行 ajax 调用,如图所示 here


然而,大多数人在抽象检查请求状态和其他琐碎任务时使用像 jQuery 这样的库。这导致 ajax 调用像调用方法并提供回调方法来处理响应一样简单。

$.ajax({
  url: '/path/to/file',
  type: 'default GET (Other values: POST)',
  dataType: 'default: Intelligent Guess (Other values: xml, json, script, or html)',
  data: {param1: 'value1'},
})
.done(function() {
  console.log("success");
})
.fail(function() {
  console.log("error");
})
.always(function() {
  console.log("complete");
});

您可以在下面找到示例 link。

http://api.jquery.com/jquery.getjson/

P.S.: 由于声望点少,我不能post任何辅助图片,也不能超过两张link。