问题描述:开发和新浪微博有关的应用,遇到如下问题:
情况如下:我是在开发android的授权, 第一次可以正常到登录页面,如果返回 ,再进入时就报这个错误?
?Caused?by:?java.io.IOException:?Received?authentication?challenge?is?null ;
?采用weibo4android ? webview
分析调试:
找了很多地方没有什么好的结果,后有一群友提示说:TOKENs失效,或是用户取消授权又重新授权过 都会报这个错
仔细看过文档,
第一步In AuthorizeActivity:
获取微博实体类,传入app key, secret,以及callback_url. ? 即获取?requestToken
第二步In AuthorizeActivity:
用获取到的oauth token , oauth_token_secret访问open apiauthorize页面.
第三步In TestActivity:
获取到callback的oauth_verifier,并根据它获取accessToken,完成登录。
第四步 ?就可以用其他接口发微博 ,获取微博信息了。
?
文档的意思是:A--授权之后会获取到requestToken, 下次去授权的时候不需要再去获取,
? ? ? ? ? ? ? ? ? ? ?B--获取accessToken之后,可保存起来下次再用,不需要再次获取。
?
我之前的做法是,每次用户登录绑定的时候都重新再去获取一次?requestToken,因此就会报 ?“重新授权”的错误。
?
解决方法:
?
暂存requestToken 到应用中,如果?requestToken==null ?,去授权。否则 直接去登录界面。
?
1 楼 qxinghui 2012-06-20
亲,这个和重复申请requsetToken没关系吧。
“Received authentication”是返回的权限,而不是重复授权
“Received authentication”是返回的权限,而不是重复授权