我是 OAuth 的新手,我正在开发一个需要它的 Android 应用程序,并且我正在使用路标库。
我相信我已经完成了所有工作,直到可以使用
String token = uri.getQueryParameter("oauth_token");
哪个正确返回但是下一行
String verifier = uri.getQueryParameter("oauth_verifier");
返回空值。我已经调试并检查了初始化为的uri
Uri uri = this.getIntent().getData();
而且它似乎没有密钥“oauth_verifier”
当我尝试以下行时,验证程序为 null 会导致 OAuthExpectationFailedException
provider.retrieveAccessToken(consumer, verifier);
谁能帮我弄清楚为什么验证者为空我使用的是回调而不是OOB。
我在其他问题中看到过,并在回复中指导了这样的事情:
dat=myapp://twitter?oauth_token=tJpJHOOwoTGMwdvHyYbfX2tyHKOp0Y2kdRRZf3sM&
oauth_verifier=xc49oM8eVVmK46ZSLz2RMT2uqXn3SxrMxf5ZAMXaD2Y
我的类似,但没有 ouath_verifier 密钥。
这是我发送有效的初始意图并获得回报的地方
String clientKey = "xxxxxxx";
String clientSecret = "yyyyyyyyy";
CommonsHttpOAuthConsumer consumer = new CommonsHttpOAuthConsumer(clientKey,clientSecret);
provider = new CommonsHttpOAuthProvider(URL_Request_Token,
URL_Access_Token,
URL_Authorize";
provider.setOAuth10a(true);
try {
String authUrl = provider.retrieveRequestToken(consumer,CALLBACK_URI.toString());
String token = consumer.getToken();
String secret = consumer.getTokenSecret();
this.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(authUrl)));
}
任何帮助深表感谢