我試圖使用Google驅動器作爲託管JSON文件的測試臺。這使我可以將我的客戶端文件交給我的設計師同事,而無需設置WebApi控制器或nodeJS服務器。通過jQuery訪問谷歌驅動器爲JSON
我嘗試在我的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。 請求的 資源上沒有「Access-Control-Allow-Origin」標題。因此不允許原產地'null'訪問。
這使我懷疑瀏覽器(或者jQuery?)希望響應頭包含一個'Access-Control-Allow-Origin'鍵/值對。
除非我可以添加這個作爲鍵/值對在JSON?這將爲我的數據添加一個外層,但我應該可以通過客戶端JavaScript中的OK進行解析。
我試過GET/POST和數據類型的幾種組合。 Jsonp似乎建議我必須在Google上設置腳本,並且我沒有看到在Google上設置jsonp的簡單方法,或者要求Google在響應標題中添加內容。通過不同的平臺,不同的結果
類似StackExchange後:JSON not parsed
你不能這樣做,因爲AJAX same-的這起源政策。 – Barmar
如果您想以編程方式訪問Drive文件,則需要使用Drive API。這不像使用Drive web應用程序的相同URL那麼簡單。請參閱https://developers.google.com/drive/ – pinoyyid