适用于经典 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=”。