【发布时间】:2015-02-22 12:38:16
【问题描述】:
我在谷歌日历 api 工作。
以下是用于创建日历的代码
if([self.auth shouldRefreshAccessToken]) {
self.auth.accessToken=self.auth.refreshToken;
}
NSString *strURL=[NSString stringWithFormat:@"https://www.googleapis.com/calendar/v3/calendars?key=%@&access_token=%@",kGoogleClientID,self.auth.accessToken];
NSDictionary *params = @{@"summary":@"1233"};
[manager POST:strURL parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"JSON: %@", [operation responseString]);
NSDictionary *dict =(NSDictionary*)responseObject;
[[NSUserDefaults standardUserDefaults] setObject:[dict objectForKey:@"id"] forKey:KDefaultCalendarID];
[[NSUserDefaults standardUserDefaults] synchronize];
[MBProgressHUD hideHUDForView:self.view animated:YES];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[MBProgressHUD hideHUDForView:self.view animated:YES];
// [MBProgressHUD hideHUDForView:self.view animated:YES];
// UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:@"" message:@"Request failed due to server error. Please try after some time." delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
// [alertView show];
}];
问题是使用刷新令牌时,我收到“请求失败:未经授权 (401)” (使用刷新令牌,因为用户不需要每次都登录)
对于用户第一次授权应用后检索到的普通访问令牌(未过期),它可以正常工作。
以下是运行时 url,仅在不使用刷新的访问令牌之前有效。
【问题讨论】:
标签: ios objective-c oauth google-api google-oauth