我想知道這是否與特別繁忙的時間谷歌應用程序腳本,因爲它似乎必須做一個(偶爾)延遲更新長度formResponse []數組。我使用下面的代碼來獲得一個形式引發的最新迴應提交:獲取最新的表單響應有時獲取之前,它反而
var form = FormApp.getActiveForm();
var formResponses = form.getResponses();
var formResponse = formResponses[formResponses.length-1]; //latest response only
Logger.log('begin length: ' + formResponses.length);
然後我的腳本的其餘部分與formResponse []數組中的答案進行交互。偶爾,我會注意到它在之前得到了最新迴應的迴應。我可以驗證這一點,因爲帶有表單響應的電子表格顯示實際的最新響應。我的腳本需要5-15秒來執行,所以II必須在我的代碼,以雙倍的尾部增加以下行再次檢查數組的長度:
var form2 = FormApp.getActiveForm();
var formResponses2 = form2.getResponses();
Logger.log('end length: ' + formResponses2.length);
,並在日誌中我會發現第二一個比第一個大(而第二個是正確的值)。我並沒有真正發現它發生的時間,但它似乎更常發生在太平洋標準時間上午7點到9點之間。現在我已經添加了一個Utilities.sleep(5000)
作爲函數中的第一行,以便在獲取響應之前有時間更新表單,到目前爲止我還沒有任何n-2響應,這讓我覺得有一些在「表單提交」觸發器觸發後,導致表單記錄最新的響應。
有沒有其他人遇到類似的東西?
您只需要得到您提交的回覆或需要所有答案? – wchiquito
我只需要最新的回覆 –