我想使用 Linq2Twitter 从 ServiceStack 编写的 REST API 中进行 Twitter API 调用。
我有以下信息:
- 消费者钥匙
- 消费者秘密
- 当用户在网站上验证我们的应用程序时缓存的 OAuth 令牌
- 当用户在网站上验证我们的应用程序时缓存 OAuth TokenSecret
如何使用此信息创建 TwitterContext 以便进行 API 调用?我正在查看文档,看到了 WebForm、MVC、桌面示例,但没有看到适合我当前用例的示例。我不认为我可以使用 WebForm/MVC,因为如果令牌/令牌秘密不好,它们会尝试将用户重定向到授权页面。我查看了桌面示例,它使用了 PIN 授权,我认为我也不能使用它。
我知道,如果用户在缓存这些值后决定撤销访问权限,则令牌/令牌秘密可能会很糟糕,因此我需要一种方法来验证,然后在失败时不执行任何操作。
这个问题并不完全相同,但您可能会对授权者概念感兴趣:
如何在 Web 服务中使用 Linq to Twitter? https://stackoverflow.com/questions/18128036/how-to-use-linq-to-twitter-inside-a-web-service/18130215#18130215
本质上,您想要实例化授权者,为 Credentials 属性分配值,如下所示:
var auth = new SingleUserAuthorizer
{
Credentials = new SingleUserInMemoryCredentials
{
ConsumerKey = ConfigurationManager.AppSettings["twitterConsumerKey"],
ConsumerSecret = ConfigurationManager.AppSettings["twitterConsumerSecret"],
TwitterAccessToken = ConfigurationManager.AppSettings["twitterAccessToken"],
TwitterAccessTokenSecret = ConfigurationManager.AppSettings["twitterAccessTokenSecret"]
}
};
然后,实例化您的 TwitterContext,如下所示:
var ctx = new TwitterContext(auth);
在本例中,特定授权者是 SingleUserAuthorizer,但您可以使用用于获取原始凭据的同一授权者。只需提供所有 4 个凭据,LINQ to Twitter 将绕过用户重定向以在 Twitter 上进行授权。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)