0
我已經在Google App Engine上構建了一個非常有用的數據庫和工具集。我已經開始了一項新工作,涉及到我的舊工作,並且我想從我的GAE應用程序訪問一些數據。使用GAS(電子表格的自定義函數)從GAE應用程序中獲取HTML
長話短說,這個代碼在谷歌應用程序腳本與谷歌Apps的電子表格中使用時失敗:
function getData(id) {
url = "http://fakeapp.appspot.com/functions/func?id=" + id;
response = UrlFetchApp.fetch(url);
if (response.getResponseCode() == 200) {
return response.getContentText();
} else {
return "error";
}
}
在電子表格中你必須:
=getDate("XYZ")
這應該返回一些數值:
10000
在我的GAE yaml文件中,此特定網址無需授權。然而,當你在谷歌電子表格使用自定義函數,它基本上就會從很熟悉的谷歌登錄頁面的HTML:
一個帳戶。所有的Google。
那種事情。問題:
- (1)我在做一些不可能的事情嗎?我有很多其他場景下的抓取工作,所以它似乎與我的GAE應用程序有關。
- (2)如果不是,我該如何得到這個工作?
謝謝你的時間。
嘗試從常規webapp(客戶端js)獲取ajax。如果您也在那裏獲得身份驗證,則更易於調試。也請嘗試https – 2015-02-11 23:33:23
謝謝,它看起來像一個問題是我必須使用HTTPS。謝謝。但我沒有被允許訪問,下面是輸出:XMLHttpRequest無法加載https://fakeapp.appspot.com/functions/func?id=XYZ。請求的資源上沒有「Access-Control-Allow-Origin」標題。原因'https://docs.google.com'因此不被允許訪問。 – MHuckelberryP 2015-02-11 23:47:06
http://enable-cors.org/server_appengine.html也是s.o.有答案。 – 2015-02-11 23:55:03