我正在開發一個連接到Microsoft Graph API的Node.js應用程序。Microsoft Graph節流Excel更新
很多時候,我得到一個429
狀態碼,在error documentation中描述爲「太多請求」。
有時返回的信息是:
TooManyRequests。客戶端應用程序已被限制,並且不應嘗試重複請求,直到經過一段時間。
其他時候,它返回:
「TooManyRequests服務器忙,請稍後再試。」。
不幸的是,它不是在頭部返回Retry-After
場,儘管他們best practices聲稱,它應該這樣做。
這完全是在開發中,而且我一直沒有打過太多的服務,因爲它一直在調試過程中。我意識到微軟經常改變它的工作方式。我發現很難開發一個服務,它甚至不提供一個Retry-After
字段,並且似乎有很多問題(我正在使用v1.0
端點)。
當我等待5分鐘(因爲我看到推薦),服務仍然出錯。下面是一個返回響應示例:
{
"error": {
"code": "TooManyRequests",
"message": "The server is busy. Please try again later.",
"innerError": {
"request-id": "d963bb00-6bdf-4d6b-87f9-973ef00de211",
"date": "2017-08-31T23:09:32"
}
}
}
這與所有正在進行的操作有關嗎?
我正在更新範圍A2:L3533
。它們都是文本值。我想知道這是否會影響節流。我還沒有找到任何有關使用「較小」操作集的指導。
謝謝Marc。即使我的請求很小,要更改1個單元格,我仍然收到相同的消息,並且我還沒有在12個小時內打過服務器。在圖形資源管理器中,我爲https://graph.microsoft.com/v1.0/me/drive/root:/MyFile執行修補程序。XLSX:/工作簿/工作表/ MySheetName /範圍(地址= 'A2:A2')用下面的JSON體 「{ 」值「:[ [ 」12「 ] ] }」,它返回「TooManyRequests 「在狀態碼429中。 – PaulPerry
當我嘗試一次更新一個單元格時,仍然會得到429狀態碼。即使這是扼殺。有一些透明度會很好,理解系統爲什麼這樣做。 – PaulPerry
此外,即使它們都以狀態碼429響應,「服務器仍忙,請稍後再試。」似乎不應該將它與429狀態代碼捆綁在一起進行調節。如果信息是可信的,那麼這個系統非常繁忙。 – PaulPerry