标签:
一:下载SDK
https://open.weixin.qq.com/cgi-bin/frame?t=resource/res_main_tmpl&verify=1&lang=zh_CN&target=res/app_download_ios
二:配置环境
将文件拖入工程
配置URL scheme
三:DEFINE
四:AppDelegate.h
五:AppDelegate.m
六:发起授权请求
调用方法后会弹出授权页面,完成授权后调用AppDelegate中的- (void)onResp:(BaseResp*)resp
七:处理返回数据,获取code
八:使用code获取access token
九:使用AccessToken获取用户信息
十:使用RefreshToken刷新AccessToken
该接口调用后,如果AccessToken未过期,则刷新有效期,如果已过期,更换AccessToken。
1 - (void)getAccessTokenWithRefreshToken:(NSString *)refreshToken 2 { 3 NSString *urlString =[NSString stringWithFormat:@"https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=%@&grant_type=refresh_token&refresh_token=%@",kWeiXinAppId,refreshToken]; 4 NSURL *url = [NSURL URLWithString:urlString]; 5 6 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 7 8 9 NSString *dataStr = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];10 NSData *data = [dataStr dataUsingEncoding:NSUTF8StringEncoding];11 12 dispatch_async(dispatch_get_main_queue(), ^{13 14 if (data)15 {16 NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];17 18 if ([dict objectForKey:@"errcode"])19 {20 //授权过期 21 }else{22 //重新使用AccessToken获取信息23 }24 }25 });26 });27 28 29 36 37 42 }
标签:
原文地址:http://www.cnblogs.com/sixin/p/4189326.html