.NET无法通过"错误验证数据" Twitter API 1.1

时间:2014-12-05 08:20:41

标签: c# asp.net api twitter oauth

尝试将Twitter 1.1 API用于简单的读取/搜索推文应用程序。对于我的生活,我无法对API进行身份验证。我通过apps.twitter.com创建了一个Twitter应用程序,阅读文档并认为我将在Postman REST Client中对此进行测试。在我的所有代币中打入OAuth 1.0标签并获得可怕的{"message": "Bad Authentication data","code":215}

仔细检查了所有内容并仍然出现同样的错误。阅读更多文档,看到“仅应用程序身份验证”需要通过OAuth 2.0。尝试了仍然是相同的Bad Authentication消息。

因为我将在.NET中这样做,所以我想为什么不尝试一个示例应用程序。按照步骤here构建OAuth请求。结果 - 另有401回复。

查看Twitter网站上.NET建议的图书馆,找到Tweetinvi。他们的文档很简单。运行库的简单片段:

var credentials = TwitterCredentials.CreateCredentials("Access_Token", "Access_Token_Secret", "Consumer_Key", "Consumer_Secret");
TwitterCredentials.ExecuteOperationWithCredentials(credentials, () =>
{
    Tweet.PublishTweet("myTweet");
});

也没有结果。在这一点上我都是,但放弃了。像调用API这样微不足道的事情让我无言以对。

文档庞大而强大,但事实证明难以理解。是否有可能我需要使用我的实际Twitter帐户而不是Twitter应用程序?

如果它有助于解决我的问题,我的应用程序设置为Read Only权限。

1 个答案:

答案 0 :(得分:2)

我可以看到你正试图用这段代码发布推文:

var credentials = TwitterCredentials.CreateCredentials("Access_Token", "Access_Token_Secret", "Consumer_Key", "Consumer_Secret");
TwitterCredentials.ExecuteOperationWithCredentials(credentials, () =>
{
    Tweet.PublishTweet("myTweet");
});

但与此同时,您说您的应用设置为只读权限。发布推文需要其他权限。