我正在尝试将Facebook整合到iOS应用中。我已正确完成身份验证。我正在使用Raywenderlich的代码。我试图执行该代码。但我得到错误。当我尝试使用访问令牌获取用户的配置文件时,它不会获取它。而是调用fail方法。我在很多网站尝试过,但我无法解决这个问题。
我有这个疑问,在下面的方法中,我打印日志中的url。复制该URL并将其粘贴到浏览器中并运行它。它给出了json数据。但在代码中它不会获取。它总是称为失败的方法。
这是我的代码。
- (void) getFacebookProfile {
NSString * urlString = [NSString stringWithFormat:@"https://graph.facebook.com/me?access_token=%@",[_accessToken stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSLog(@"profile UrlString: %@", urlString);
NSURL * url = [NSURL URLWithString:urlString];
ASIHTTPRequest * request = [ASIHTTPRequest requestWithURL:url];
[request setDidFinishSelector:@selector(getFacebookProfileFinished:)];
[request setDidFailSelector:@selector(getFacebookProfileFailed:)];
[request setDelegate:self];
[request setValidatesSecureCertificate:NO];
request.shouldAttemptPersistentConnection = NO;
[request startAsynchronous];
}
- (void) getFacebookProfileFailed:(ASIHTTPRequest *) request {
NSLog(@"profile information has failed");
NSLog(@"%@", [request error]);
}
- (void) getFacebookProfileFinished:(ASIHTTPRequest *)request {
//somecode
}
此代码始终调用fail方法。在失败方法中,我已经打印了错误。错误如下
错误域= ASIHTTPRequestErrorDomain代码= 1“连接失败 发生了“UserInfo = 0x94d47a0 {NSUnderlyingError = 0xa36b700” 操作无法完成。 (kCFErrorDomainCFNetwork错误2.)“, NSLocalizedDescription =发生连接失败}