我正在使用Tweetsharp,我正在尝试使用Twitter应用程序。目前它是一个简单的控制台应用程序。
我在网上搜索并发现了一些文章,其中大部分都说明在2010年8月16日之后,Twitter的基本身份验证不再适用。相反,OAuth已经到位。
从此以后,我去了Twitter Apps并为我创建了一个。(因为它是一个桌面应用程序,所以我选择Application Type为Client而不是浏览器。)
这些是我得到的各种信息
Consumer key : NxDgjunKLu65CW38Ea1RT
Consumer secret :JOomsRGPTHct9hFjGQOTpxScZwI5K8zkIpOC1ytfo
Request token URL : https://twitter.com/oauth/request_token
Access token URL : https://twitter.com/oauth/access_token
Authorize URL: https://twitter.com/oauth/authorize
作为计划的一个非常基本的步骤,我会写一些推文到我的墙上。
从此以后,我做了以下(一些代码来自web,因为我使用这些代码作为参考)
string consumerKey = "NxDgjunKLu65CW38Ea1RT";
string consumerSecret = "JOomsRGPTHct9hFjGQOTpxScZwI5K8zkIpOC1ytfo";
FluentTwitter.SetClientInfo(new TwitterClientInfo { ConsumerKey = consumerKey, ConsumerSecret = consumerSecret });
//Gets the token
var RequestToken = FluentTwitter.CreateRequest().Authentication.GetRequestToken().Request().AsToken();
var twitter = FluentTwitter.CreateRequest()
.AuthenticateWith(
consumerKey
,consumerSecret,
RequestToken.Token,
RequestToken.TokenSecret)
.Statuses().Update("I am writing my first tweets").AsXml();
var response = twitter.Request();
var status = response.AsStatus();
但回应是
<?xml version="1.0" encoding="UTF-8"?>
<hash>
<error>Could not authenticate with OAuth.</error>
<request>/1/statuses/update.xml</request>
</hash>
我很长时间都在努力理解这个问题,但一切都是徒劳的。
我需要帮助。
由于
答案 0 :(得分:2)
获取请求令牌只是OAuth流程的第一步。您需要获取请求令牌,授权令牌,然后交换是否为访问令牌。然后使用访问令牌发送推文。
有关完整OAuth流程的流程图,请参阅此link。