2013-06-18 22 views
2

Instagram的提供在客戶端ID和個人訪問令牌速率限制。兩個限制都是5000 /小時。僅針對未經過身份驗證的API請求的客戶端ID的Instagram速率限制是什麼?

我需要知道,如果客戶端ID的限制是有或沒有對於認證的請求。

所有這一切將來自我的客戶ID的請求會(使用訪問令牌)進行身份驗證。所以,如果我有10個令牌,並且在同一小時內對每個訪問令牌發出1000個請求,導致總共10000個請求,那麼會發生以下哪種情況:

1)我的所有請求都會經過,因爲每個請求都會經過1000個請求被計入訪問令牌限制

2)我5,0001st請求將失敗,因爲我會使用相同的客戶端ID取得了5000多?

回答

2

你得到每訪問令牌5000個請求。這意味着只要您對用戶進行身份驗證並使用其訪問令牌,您的示例中每個用戶就應剩下4000個用戶。要知道還有很多其他的事情/方法可以被抑制。

這裏有一些提示:

  1. 不要發出並行太多調用。這看起來像是對Instagram的濫用/ DOS攻擊,他們可能暫時/永久禁止你。因此,如果您的音量可能很高,請使用速率限制機制,如隊列。如果請求由於網絡問題或api限制而失敗,則這可以具有額外的耐用性。

  2. 我觀察並聽說某些調用(如likes/following)的限制有點低,更像300.如果您只是提取媒體和瀏覽Feed,這應該不是問題。

  3. 訪問令牌可以在任何時間過期。請注意,如果您的請求長時間運行,這是您可能需要處理的錯誤情況。

  4. 如果您嘗試將呼叫批量撥出至較小的批量呼叫,則可以保存API呼叫。例如,如果數據集很小,並且您知道該項目將位於最近的媒體中,則可以在遍歷所有用戶的項目以找到具有標籤的1媒體項目與瀏覽標籤本身之間存在差異。選擇最小的可能結果集並從那裏開始,如果您正在進行任何自己的瀏覽/過濾。

Instagram API Docs

限制 善待。如果您發送的請求太快,我們會發回一個503錯誤代碼(服務器不可用)。

每個access_token或client_id的整體限制爲每小時5000個請求。實際上,這意味着您應該(在可能的情況下)對用戶進行身份驗證,以使限制遠遠超出給定用戶的範圍。

相關問題