我正在尝试使用twitterizer与twitter oAuth合作,但我无法做到。
我收到以下错误:
The remote server returned an error: (401) Unauthorized
。
当我的回调网址是本地主机时。
如果我的回调网址为oob,则针脚流程可以正常工作。
这是我的代码:
public ActionResult LogOn(string returnUrl, bool? perm)
{
string consumerKeyTw = @"UF3F72XqfGShQs7juKMApA";
string consumerSecretTW = "secret";
OAuthTokenResponse requestToken = OAuthUtility.GetRequestToken(consumerKeyTw, consumerSecretTW, "http://localhost:58892/Twitterr/OAuth");
// Direct or instruct the user to the following address:
Uri authorizationUri = OAuthUtility.BuildAuthorizationUri(requestToken.Token);
return new RedirectResult(authorizationUri.ToString(), false);
}
我在设置回调网址时从未获得令牌。在twitter上我注册了我的回调url localhost。
我错过了什么吗?
有什么想法吗?
答案 0 :(得分:9)
确保您的应用程序在development portal上设置为Web应用程序。对于那里的回调地址,请确保使用不正确的地址(如应用程序的主页),然后在运行时指定实际地址。
Web应用程序可以使用基于PIN的身份验证,但桌面应用程序无法使用Web流。
答案 1 :(得分:7)
我遇到了同样的问题,并通过在Twitter App Settings页面中添加“回拨网址”来修复它。我还没有我的域名,所以我只是添加了一个未使用的域名,如:http://www.website.com。 Twitterizer请求电话立即开始为我工作。
Fissh