我有一個網絡應用程序,大多數新用戶都從其他平臺導入hostorical數據。另一個平臺將數據導出爲Excel電子表格。我需要清理電子表格並將其導出爲JSON(或csv),以便將其導入到我的應用程序中。使用Drive API在雲端硬盤中的電子表格上運行Google腳本
爲了實現這一點,我創建了一項服務,用戶可以將Excel電子表格上傳到我的雲端硬盤,然後將其轉換爲Google電子表格。我寫了一個名爲Cleanup.gc的谷歌腳本,它也駐留在我的雲端硬盤中,它清理數據並對其執行一些操作。
到目前爲止,我可以使用Drive API自動上傳用戶電子表格。上傳完成後,它會發回一個可以識別電子表格的ID。
我現在想要做的是通過適當的API調用Cleanup.gc腳本,以便它在新上傳的電子表格上執行。一旦完成,我會繼續將數據導入到我的應用程序中。
我已經瀏覽了很多谷歌API文檔的頁面,但是我還沒有找到任何能夠完成我所描述的功能的東西。這個功能是否存在?如果沒有,是否有智能的方式來使用谷歌腳本觸發器來完成同樣的事情?
下面是代碼我現在有,它運行在用戶的瀏覽器:
var token; //pre-generated Google Auth token passed from server
var xhr = new XMLHttpRequest();
xhr.open("POST", 'https://www.googleapis.com/upload/drive/v2/files?uploadType=media&convert=true', true);
xhr.setRequestHeader('Authorization', 'Bearer ' + token);
xhr.setRequestHeader('Content-Type', 'application/vnd.ms-excel');
xhr.onload = function() {
if (xhr.status === 200) {
var id = xhr.response.id;
// NOW I NEED TO CALL MY .gc SCRIPT ON THIS ID
};
};
沒有oauth的簡單方法是將另一個腳本作爲匿名服務發佈 –