刚接触OAuth认证的时候 迷迷糊糊的 经过查看各位前辈留下的资料 渐渐明白了 其实OAuth认证就是在开发者不接触用户帐号和密码的状况下使用户完成登录
理解能力有限 差很少这个意思 web
新浪OAuth2.0认证主要就是获取accesstoken这个参数 要怎么获取呢? 这个问题问的好———首先json
NSString *url = [NSString stringWithFormat: @"https://api.weibo.com/oauth2/authorize?client_id=1900264725&redirect_uri=http://www.baidu.com&response_type=token&display=mobile"]; NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]]; _webview.delegate = self; [_webview loadRequest:request];
其中client_id就是在新浪申请的那个key,用的时候写你本身的 个人这个尚未审核 只能测试帐号 - - 上面的参数在新浪API都有详细解释 就不赘言了 api
能够获得这个界面测试
而后 实现webview的协议方法ui
- (void)webViewDidFinishLoad:(UIWebView *)webView{ NSString *tokenstring = self._webview.request.URL.absoluteString; NSLog(@"%@",tokenstring); NSRange range = NSMakeRange(35, 32); accesstoken = [tokenstring substringWithRange:range]; NSLog(@"%@",accesstoken); }
而后输入你的帐号登录 -----url
首先获取到了返回的一串字符{http://www.baidu.com/#access_token=2.00PrLBzCDf_bECe3e352e80eNcs9YB&remind_in=121673&expires_in=121673&uid=2733906073}code
其中就有咱们要的access_token 而后经过 NSRange 截取
我数了数 它是在35 长度32orm
打印出:2.00PrLBzCDf_bECe3e352e80eNcs9YBxml
而后就能够参照新浪的API把这个参数加入到不一样的url中获取你要的json或者xml 要怎么用随你token
能力有限~~但愿能给你点启发