无法通过Microsoft AspNet OAuth lib通过Twitter对用户进行身份验证

时间:2014-10-14 20:58:59

标签: asp.net asp.net-mvc-4 twitter oauth dotnetopenauth

我正在使用Microsoft AspNet OAuth库(引用DotNetOpenAuth)通过我网站上的Twitter对用户进行身份验证。我在注册twitter客户端(OAuthWebSecurity.RegisterTwitterClient)时传递了正确的api密钥和密码,但我仍然在请求身份验证时收到以下错误消息(OAuthWebSecurity.RequestAuthentication) -

  

DotNetOpenAuth.Core.dll中出现“DotNetOpenAuth.Messaging.ProtocolException”类型的异常,但未在用户代码中处理

     

其他信息:发送直接消息或收到回复时出错。

     

InnerException:{“远程服务器返回错误:(401)未经授权。”}

我之前使用相同的密钥和密码调用了Twitter API,但从未发现任何问题。不确定为什么这不适用于OAuth库。有人能告诉我是什么原因造成的,以及如何解决它?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

终于找到了问题的解决方案。

我需要在Twitter应用设置中提供回调网址。在注册时,我没有提供它,因为应用程序在localhost中运行。但是,幸运的是Twitter没有提供任何虚拟URL作为回调URL的问题,我现在这样做了。它有效!