Twitter 的速率限制是一種工具,旨在控制其應用程式程式設計介面 (API) 的使用方式,以阻止濫用並提供對資源的公平訪問。它對使用者或應用程式在特定時間段內可以提交的查詢數量設定限制。
本文將闡明 Twitter 速率限制背後的基本原理以及程式設計師如何在其限制內成功操作。
Twitter 實施速率限制以保障其平臺的效能和穩定性。 速率限制定義為一段時間(通常為 15 分鐘)內每個 API 端點允許的最大請求數。因此,如果端點的速率限制為每 15 分鐘 900 個請求,則意味著您最多可以在任何 15 分鐘間隔內發出 900 個請求。
根據您使用的身份驗證方法,可能會施加速率限制。例如,如果您使用“OAuth 1.0a 使用者上下文”,則每組使用者在任何給定時間可以擁有的訪問令牌總數都會受到限制。相反,如果您使用“OAuth 2.0 Bearer Token”,您的應用程式將對其在分配的時間內可能發出的請求數量有一個明顯的上限。如果超出這些限制,將返回錯誤。請繼續閱讀以瞭解有關這些細節的更多資訊,並獲取有關如何避免速率限制的建議。
Twitter 使用兩種不同型別的速率限制:使用者令牌級別和廣告帳戶級別。使用者令牌是指用於身份驗證和呼叫廣告 API 的 OAuth 訪問令牌。每個使用者令牌可以與一個或多個廣告帳戶關聯。但是,只有一組特定的端點被配置為利用廣告帳戶級別速率限制。
埃隆·馬斯克最近宣佈,Twitter 決定對使用者每天可以閱讀的帖子數量實施臨時限制。採取這一措施是為了響應對“極端水平的資料抓取和系統操縱”的觀察。
由於此類限制,使用者必須登入 Twitter 才能訪問推文。對於不同的賬戶型別,設定了不同的限額。未經驗證的帳戶每天只能閱讀 600 個帖子,而經過驗證的帳戶每天最多可以訪問 6,000 個帖子。全新、未經驗證的帳戶的每日限制要低得多:300 個帖子。超過這些上限的使用者將立即收到一條警告,提示“超出速率限制”。
超過速率限制會導致臨時限制,例如無法執行某些操作或檢索資料。使用者需要等到速率限制重置後才能恢復在平臺上的活動。不過,馬斯克也宣佈,近期將提高限額。
相關: 由於速率限制大幅削減,加密推特在谷歌上的曝光率將減少
開發者可以通過多種方式在 Twitter 的速率限制下高效運營:
Twitter 在 API 響應中包含有關速率限制處理的資訊,使開發人員能夠監控使用情況並採取適當的措施。當達到速率限制時,API 答案包含與速率限制相關的標頭,顯示仍有多少請求處於開啟狀態以及限制何時重置。開發人員應使用適當的錯誤處理工具來妥善管理超出速率限制的錯誤。
不,不可能繞過 Twitter 施加的速率限制。速率限制由 Twitter 系統強制執行,以保持穩定性、防止濫用並確保平臺的公平使用。嘗試繞過速率限制可能會導致臨時限制或違反 Twitter 政策的其他後果。
遵守速率限制準則並在定義的限制內負責任地使用 Twitter API 非常重要。為了確保成功且持久的開發過程,開發人員應該努力優化他們的程式碼,使用有效的策略並尊重 Twitter 的限制。





