Notice: We're retiring Works with Nest. See the home page for more information.
Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

數據速率限制

我們希望開發人員創建引人入勝的用戶體驗,但我們也希望Nest服務和設備始終可供用戶使用。在給定的時間內發出大量請求的產品可能會影響服務和設備的可用性,因此我們應用了速率限制。速率限制可限制給定時間段內的API調用次數。

速率限制的類型

我們實施了兩類速率限制。第一個限制是每小時每個設備或結構 。這些限制在所有Works with Nest產品之間共享,旨在防止過度使用設備。第二類限制是每個訪問令牌 。這些限制旨在防止過度使用Nest服務。

每個設備/結構的限制

對數據模型的每次寫入都要求設備喚醒並同步狀態。這會影響電池壽命,因此我們限制了對設備和結構的寫入次數。我們還將監視所有設備的電池狀態。如果它們降至某個閾值以下,我們將拒絕寫請求,直到電池充滿電為止。

每次訪問令牌限制

每個訪問令牌還具有關聯的速率限制。建立與服務的連接會產生一些開銷,因此我們限制了產品在特定時間段內可以建立的連接數。

對於REST和REST流式調用,每個訪問令牌都具有有限數量的調用。數據速率限制適用於通過REST進行的讀/寫調用,以及通過REST流進行的讀調用。為避免錯誤,建議您將請求限制為每分鐘最多一次呼叫。

錯誤回應

使用REST時,您將收到429個請求過多的響應代碼。

處理307重定向

進行REST調用時,您的產品將需要處理307個重定向。 307臨時重定向響應(也稱為URL轉發)為瀏覽器重新提交請求提供了新的URL。

當發生307重定向時,您將需要使用新的URL信息再次撥打電話。執行此操作時,應緩存主機和端口號,以供將來使用該用戶/訪問令牌的呼叫使用。請記住,每個呼叫都計入速率限制。考慮您的用戶如何與您的產品進行交互。某些用戶將反复按下按鈕或選擇一個設置,因此,如果您為每個用戶操作打電話,它會很快影響速率限制。如果用戶快速連續進行一系列更改,則應僅對最後一個(最近的)值進行API調用。

有關更多信息和示例,請參見如何處理重定向

307後重定向

如果您正在使用重定向URL信息並在以後獲得307重定向,則應遵循該重定向。

連接錯誤

如果您使用緩存的URL信息並遇到連接錯誤(由於主機退出服務或站點關閉),則應還原為原始基本URL。

速率限制更改

隨著我們更多地了解使用模式及其對服務的影響,我們可能發現有必要修改速率限制。我們強烈建議您構建產品,以使用最少的通話次數來構建引人注目的用戶體驗,並適當處理違反速率限制的問題。