我正在使用Microsoft AspNet OAuth库(引用DotNetOpenAuth)通过我网站上的Twitter对用户进行身份验证。我在注册twitter客户端(OAuthWebSecurity.RegisterTwitterClient)时传递了正确的api密钥和密码,但我仍然在请求身份验证时收到以下错误消息(OAuthWebSecurity.RequestAuthentication) -
DotNetOpenAuth.Core.dll中出现“DotNetOpenAuth.Messaging.ProtocolException”类型的异常,但未在用户代码中处理
其他信息:发送直接消息或收到回复时出错。
InnerException:{“远程服务器返回错误:(401)未经授权。”}
我之前使用相同的密钥和密码调用了Twitter API,但从未发现任何问题。不确定为什么这不适用于OAuth库。有人能告诉我是什么原因造成的,以及如何解决它?任何帮助将不胜感激。
答案 0 :(得分:2)
终于找到了问题的解决方案。
我需要在Twitter应用设置中提供回调网址。在注册时,我没有提供它,因为应用程序在localhost中运行。但是,幸运的是Twitter没有提供任何虚拟URL作为回调URL的问题,我现在这样做了。它有效!