2012-05-04 54 views
0

基本上我想要做的是要求用戶公開時間表(包括轉推),而不必使用身份驗證,但速率限制適用於我的應用程序,而不是IP。讀的Twitter用戶時間軸但速率限制在我的應用程序

我要運行這個請求(爲幾個不同的網名):

http://api.twitter.com/1/statuses/user_timeline.json?screen_name=stephenfry&include_rts=1&trim_user=1 

對API,但我是一個代理/防火牆,基本上導致成千上萬的用戶共享同一個IP其背後意味着我的IP幾乎總是受速率限制。是否有可能以某種方式將我的API密鑰插入到請求中(頭部,查詢字符串的一部分)並對其進行速率限制而不是IP?

我真的不想去,通過每個用戶的全OAuth認證機制,因爲這需要他們的互動,我只希望閱讀其公開的飼料。

我已經實現了本地緩存的鳴叫所以它會在最能讓每小時/用戶名4個請求,但是這確實我一點好當IP是從一開始就限定的比率。

可以這樣做,如果是我會怎麼做呢?

編輯:我要補充一點,使用搜索API是不可能的,因爲它不會返回任何鳴叫一些用戶(微博太舊)的。

回答

1

沒有形式對Twitter的API應用程序唯一的身份。要進行已認證的請求,您必須具有用戶上下文。如果您的集成純粹是服務器端的,那麼您可以使用代表您自己的帳戶的單個訪問令牌,並以這種方式進行經過身份驗證的簽名請求。我不會在客戶端或分佈式環境中推薦任何類型的硬編碼令牌。您可能想要了解使用Streaming API的可能性以及它的跟蹤過濾器 - 允許您實時通過特定用戶流式傳輸公共推文。