如何使用API 1.1连接到Twitter,可能使用OAuth身份验证

How to connect to Twitter with API 1.1 possibly using OAuth authentication?

本文关键字:OAuth 身份验证 Twitter API 何使用 连接      更新时间:2023-09-26

我在Arduino中做了一个网站+一个项目,两者都从我自己的Twitter帐户中获取tweet并根据这些行为。今天推特API改成了1.1版本,现在我的网站不能用了。

在我的网站上,我一直使用JavaScript与此代码:

var twitter_api_url = 'http://search.twitter.com/search.json';" 
$.getJSON( twitter_api_url  + '?callback=?&rpp=5&q=from:' + twitter_user, function(data) { ". 

这个不工作,我不知道如何改变它。

在Arduino中我调用:

client.println("GET /1/statuses/user_timeline.xml?screen_name=MYTWITTER HTTP/1.1");
client.println("Host:api.twitter.com");
client.println("Connection:close");
client.println();

我得到错误信息410(消失)和"Twitter REST API v1将很快停止工作。请迁移到API v1.1。https://dev.twitter.com/docs/api/1.1/overview"。

我试着寻找修复,但我找不到正确的解决方案。我是否需要进行OAuth身份验证?我找到了一个创建参数的指南,生成Twitter应用程序密钥,但我不知道如何将参数添加到JavaScript或Arduino代码。

我找到了Arduino的建议:

client.print(F("GET /1/statuses/user_timeline.xml?screen_name=MYTWITTER HTTP/1.1"));
client.print(F("HOST: api.twitter.com"));
client.print(F("Authorization: OAuth oauth_consumer_key='"XXX'", oauth_nonce='"XXX'", oauth_signature='"XXX'", oauth_signature_method='"HMAC-SHA1'", oauth_timestamp='"1361444134'", oauth_token='"XXX'", oauth_version='"1.0'""));
client.println();
client.println();

但是oauth_nonce, oauth_signatureoauth_timestamp应该是什么?另一位用户也回答说,这不起作用,所以我不知道我是否要继续下去。

如何解决这个问题?

这可能有助于解决您的问题。验证Twitter OAuth API V1.1的用户时间轴> http://www.webdevdoor.com/php/authenticating-twitter-feed-timeline-oauth/