通过jQuery以JSON形式访问谷歌驱动器



我正在尝试使用Google云端硬盘作为托管JSON文件的测试平台。这允许我将客户端文件交给我的设计师同事,而无需设置 WebApi 控制器或 nodeJS 服务器。

我尝试在我的JavaScript中这样称呼它:

    $.ajax({
        type: "POST",
        dataType: 'json',
        contentType: "application/json",
        url: "https://drive.google.com/file/d/0B-6bXDnuW6gPT3NUQ1VSQW12Z1k/view?usp=sharing"
    })
  .done(function( data ) {
    // reference data here
    alert( data );
  });

这是我试图取回的数据:

[{
            "Name": "Soren Kierkegaard",
            "Timestamp": "1301190400",
            "Comment": "Life is understood backwards, but it is lived forwards.",
            "StaticURL": "./img/some_guy2.png"
        }]

但我回来了:

XMLHttpRequest 无法加载 https://drive.google.com/file/d/0B-6bXDnuW6gPT3NUQ1VSQW12Z1k/view?usp=sharing。 请求的上不存在"访问控制允许源"标头 资源。因此,不允许访问源"空"。

这倾向于怀疑浏览器(或者jQuery?(希望响应标头包含"访问控制-允许来源"键/值对。

除非我可以将其添加为 JSON 中的键/值对?这将为我的数据添加一个外层,但我应该能够在客户端 JavaScript 中解析该 OK。

我已经尝试了GET/POST和数据类型的几种组合。Jsonp似乎建议我必须在Google设置一个脚本,并且我没有看到在Google设置jsonp或要求Google在其响应标头中添加某些内容的简单方法。

通过不同平台和不同结果的类似 StackExchange 帖子:JSON 未解析

我通过使用 myjson.com 作为主机提供程序来解决这个问题。

老实说,我不明白静态 json 文件如何造成安全隐患。动态 json - 也许 - 但如果它来自谷歌云端硬盘上的文件,它不会是动态创建的,对吧?

谷歌云端硬盘 API 需要阻碍凭据箍才能跳过......这不利于快速原型制作或设置暂存环境。

从谷歌云端硬盘获取您需要更改网址的文件内容,请使用谷歌云端硬盘/主机链接,如下所示:使用链接作为"https://googledrive.com/host/0B-6bXDnuW6gPT3NUQ1VSQW12Z1k">

最新更新