gpt4 book ai didi

c# - 在 ServiceStack api 中使用 Linq2Twitter 和缓存的 OAuth token

转载 作者:行者123 更新时间:2023-11-30 16:16:35 24 4
gpt4 key购买 nike

我想使用 Linq2Twitter 从用 ServiceStack 编写的 REST API 中进行 Twitter API 调用。

我有以下信息:

  • 消费者 key
  • 消费者 secret
  • 当用户在网站上验证我们的应用程序时缓存的 OAuth token
  • 从用户在网站上验证我们的应用程序时缓存的 OAuth TokenSecret

如何使用此信息创建 TwitterContext 以便进行 API 调用?我正在查看文档,我看到了 WebForm、MVC、桌面示例,但没有一个适用于我当前的用例。我认为我不能使用 WebForm/MVC,因为如果 token / token 密码错误,它们会尝试将用户重定向到授权页面。我查看了桌面示例,它使用了 pin 授权,我认为我也不能使用它。

我知道如果用户在我缓存这些值后决定撤销访问权限,则 token / token secret 可能是错误的,因此我需要一种验证方法,如果失败则不执行任何操作。

最佳答案

这个问题并不完全相同,但您可能对授权人的概念感兴趣:

How to use Linq to Twitter inside a web service?

本质上,您想要实例化一个授权方,为 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 上进行授权。

关于c# - 在 ServiceStack api 中使用 Linq2Twitter 和缓存的 OAuth token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18156357/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com