適用於經典 ASP (Jscript) 開發人員的 OAuth 範例。從 Twitter API v1.1 請求公共來源。
我一直在許多網站上使用 Tweet.js 來請求和顯示客戶的公共 Twitter 來源。 v1 API 被棄用後,我創建了一小段程式碼,它位於我自己的伺服器上,並處理我所有客戶端網站的身份驗證和請求。該程式碼透過將 Twitter 的 JSON 回應快取到本地檔案來限制 Twitter 請求的數量,並且僅在快取過期(目前設定為 3 小時,可以輕鬆更改)時才對每個 TwitterID 發出新請求。它實際上旨在返回多達十幾條推文,並顯示在網站上。我懷疑它是否適合返回大量推文,或作為真正的 Twitter 用戶端的替代品。
程式碼使用 Tweet.js 中的一些日期解析和連結擴展函數。您可以在他們的網站上找到有關 Tweet.js 的更多資訊:http://tweet.seaofclouds.com/
要使用此程式碼,您需要運行經典 ASP。將 ASP 檔案放置在伺服器上的專用資料夾中。您還需要下載程式碼中提到的 crypto 和 base64 js 文件,並將它們保存在本地。更改程式碼以反映這些檔案的位置,並將程式碼包裝在 ASP 伺服器端腳本標記 (<% %>) 中。最後,確保該資料夾具有寫入權限,以便 FileSystemObject 可以建立 JSON 回應快取檔案。
您需要在此處建立自己的 Twitter API 應用程式:https://dev.twitter.com/apps。建立應用程式後,您將需要消費者金鑰和消費者秘密。您還需要建立一個訪問令牌和一個訪問令牌密鑰。所有這四個選項都可以在 Twitter 上的新應用程式的「詳細資料」標籤(以及「OAuth 工具」標籤)上找到。
除了金鑰和機密之外,您還需要提供本機檔案路徑(用於快取檔案)和預設 Twitter ID(最終 Twitter ID 透過查詢字串傳送)。
該程式碼有相當多的註釋,並且您需要插入自己的訊息的地方都用大寫和下劃線表示(“ YOUR_CONSUMER_SECRET_HERE ”),我希望它非常明顯,但請隨時向我提出問題。
從您的網站使用它只需使用適當的查詢字串值來執行 http 請求即可。
<%
var http = Server.CreateObject("MSXML2.ServerXMLHTTP");
http.open('GET', 'twitter-oauth.asp?count=1&id=16715178&output=none', false);
http.send();
Response.Write(http.responseText);
%>
上面的程式碼僅傳回我最近一條原始推文的文字(和相對日期)。如果沒有任何查詢字串值,程式碼將傳回來自預設使用者(在程式碼本身中指定)的最近 5 則原始推文(無回覆或轉送)的原始 JSON。
接受的查詢字串選項為「count=」、「id=」、「output=」、「replies=」、「retweets=」和「force_update=」。