我正在尝试连接到Google RESTful API,但我只需要登录屏幕。
我的目标是能够使用RESTful在谷歌日历中创建日历。
我已经在Google API控制台上创建了我的API密钥
我做到了:
NSString* baseURL = @"https://accounts.google.com/o/oauth2/auth?";
NSString* url = [NSString stringWithFormat:@"%@%@",baseURL,[self dictionaryToURLStringVariables:[self authParameters]]];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
NSURLConnection *connection=[[NSURLConnection alloc] initWithRequest:request delegate:self];
身份验证参数
-(NSDictionary*)authParameters
{
NSDictionary* dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"code",@"response_type", redirectURI,@"redirect_uri", API_ID,@"client_id", @"https://www.googleapis.com/auth/calendar",@"scope", nil];
return dictionary;
}
响应工作正常,但我得到的只是一个谷歌HTML登录。
我查了一下,谷歌有自己的Objective-C库,从我的角度来看,它太复杂了,不是基于iDevices,而是基于Desktop。
我的第一个问题是:
有没有一种简单的方法可以通过REST(登录、令牌、CRUD…)发送和发布请求来完成这一切?
例如:http://www.googleapis.com/login?user=MY_EMAIL&password=MY_password(<-当然不是很简单/不安全,但你明白了…)
对于问题1,请尝试实现此NSURLConnection委托方法。它允许您在服务要求提供凭据时提供凭据。
- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge