加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-4 – 在MVC4中调用DotNetOpenAuth Twitter API版本1

发布时间:2020-12-16 09:48:45 所属栏目:asp.Net 来源:网络整理
导读:我正在编写一个MVC4 Web应用程序,它必须查询Twitter Version 1.1 API.内置于MVC4中,当我在AuthConfig.cs中激活OAuthWebSecurity.RegisterTwitterClient时,我可以使用“使用Twitter登录”功能.然后,这会对Twitter登录进行身份验证,但我想要做的是授权用户,以
我正在编写一个MVC4 Web应用程序,它必须查询Twitter Version 1.1 API.内置于MVC4中,当我在AuthConfig.cs中激活OAuthWebSecurity.RegisterTwitterClient时,我可以使用“使用Twitter登录”功能.然后,这会对Twitter登录进行身份验证,但我想要做的是授权用户,以便我可以代表用户进行API v1.1调用.

我在Stack Overflow上找到了this post,它使用自定义类来解决不同的问题(force_login参数问题),但是我使用了这些类并将UserAuthorizationEndpoint更改为指向oauth / authorize.我更改了这行代码:

UserAuthorizationEndpoint = new MessageReceivingEndpoint("https://api.twitter.com/oauth/authenticate",HttpDeliveryMethods.GetRequest | HttpDeliveryMethods.AuthorizationHeaderRequest),

对此:

UserAuthorizationEndpoint = new MessageReceivingEndpoint("https://api.twitter.com/oauth/authorize",

它适用于授权,这意味着现在我的应用程序授权Twitter用户.但是,当我调用API v1.1时,我收到'(401)Unauthorized’错误.这是我用于通话的代码:

var var1 = WebWorker.PrepareAuthorizedRequest(new MessageReceivingEndpoint("https://api.twitter.com/1.1/followers/ids.json?cursor=-1&screen_name=sitestreams",HttpDeliveryMethods.GetRequest),accessToken);
var var2 = var1.GetResponse();

我想我也需要oauth_token_secret来授权这个电话.
DotNetOpenAuth可以给我oauth_token_secret吗?我可以再用吗
WebWorker.PrepareAuthorizedRequest还发送oauth_token_secret?

我还在Stack Overflow上找到了this post,它说我不能使用DotNetOpenAuth.但是,DotNetOpenAuth代码已经更新了,我想知道它现在是否适合我想要做的事情,这本质上是一件非常简单的事情:允许用户使用Twitter登录我的Web应用程序,然后允许我的Web应用程序,以查看用户的关注者.

所以归结为:我可以在MVC4中使用DotNetOpenAuth来授权用户,然后代表用户调用Twitter API v1.1,例如GET粉丝/ ids.如果可能,我该怎么办?

解决方法

是的,DotNetOpenAuth绝对可以用于此.您可以下载包含OAuthConsumer项目的 DotNetOpenAuth samples,其中包含一个Twitter.aspx页面,该页面显示了如何执行此操作.是的,它是Web表单而不是MVC,但翻译起来并不难.

您遇到问题的原因是因为您尝试在DotNetOpenAuth.AspNet命名空间中使用Microsoft提供的类,这些类是专门为身份验证而非授权而设计的.使用样本中的WebConsumer / TwitterConsumer类将允许您执行您要求的操作.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读