我正在使用以下代码
- (void)linkedInEngineAccessToken:(RDLinkedInEngine *)engine setAccessToken:(OAToken *)token {
if( token ) {
[token rd_storeInUserDefaultsWithServiceProviderName:@"LinkedIn" prefix:@"My app name"];
}
else {
[OAToken rd_clearUserDefaultsUsingServiceProviderName:@"LinkedIn" prefix:@"My App name"];
}
}
- (OAToken *)linkedInEngineAccessToken:(RDLinkedInEngine *)engine {
return [OAToken rd_tokenWithUserDefaultsUsingServiceProviderName:@"LinkedIn" prefix:@"My app name"];
}
- (void)linkedInEngine:(RDLinkedInEngine *)engine requestSucceeded:(RDLinkedInConnectionID *)identifier withResults:(id)results {
NSLog(@"++ LinkedIn engine reports success for connection %@\n%@", identifier, results);
if( identifier == self.fetchConnection ) {
// NSDictionary* profile = results;
}
}
- (void)linkedInEngine:(RDLinkedInEngine *)engine requestFailed:(RDLinkedInConnectionID *)identifier withError:(NSError *)error {
NSLog(@"++ LinkedIn engine reports failure for connection %@\n%@", identifier, [error localizedDescription]);
}
- (void)fetchProfile {
self.fetchConnection = [self.engine profileForCurrentUser];
[self.engine updateStatus:@"Download app from the #Apple #AppStore and #Android #GooglePlay market."];
[self dismissModalViewControllerAnimated:YES];
}
#pragma mark - RDLinkedInAuthorizationControllerDelegate
- (void)linkedInAuthorizationControllerSucceeded:(RDLinkedInAuthorizationController *)controller {
[self fetchProfile];
}
- (void)linkedInAuthorizationControllerFailed:(RDLinkedInAuthorizationController *)controller {
}
- (void)linkedInAuthorizationControllerCanceled:(RDLinkedInAuthorizationController *)controller {
}
@end
我已正确设置了一些东西。它需要我链接登录页面和登录后给予权限我得到这个错误
无法加载页面错误Domain = NSURLErrorDomain Code = -1003“A 找不到具有指定主机名的服务器。“ 的UserInfo = 0x81e2250 {NSErrorFailingURLStringKey = HTTP://www.devbee.ca/组oauth_token = MY_TOKEN&安培; oauth_verifier = VERIFIER, NSErrorFailingURLKey = MY_REDIRECT_URL /组oauth_token = MY_OAUTH_TOKEN&安培; oauth_verifier = MY_VERIFIER, NSLocalizedDescription =具有指定主机名的服务器不能 找到。,NSUnderlyingError = 0x810ddc0“具有指定的服务器 无法找到主机名。“}
有什么问题?
是因为
- (OAToken *)linkedInEngineAccessToken:(RDLinkedInEngine *)engine {
return [OAToken rd_tokenWithUserDefaultsUsingServiceProviderName:@"LinkedIn" prefix:@"My app name"];
}
答案 0 :(得分:1)
问题来自http://www.devbee.ca未启动并运行的事实。我不知道你引用http://www.devbee.ca的代码或配置中的哪一点,但那就是错误所在。
我猜你在LinkedIn应用程序的配置中,已将OAuth Accept Redirect URL
设置为http://www.devbee.ca,这是一个不存在的URL。但这只是一个猜测,你需要挖掘一下才能弄清楚为什么LinkedIn会将你重定向到http://www.devbee.ca。
<强>更新强>
您似乎需要在应用配置中将此OAuth接受重定向网址设置为http://linkedin_oauth/success
。它在GitHub project:
最重要的是,OAuth重定向网址必须设置为:
http://linkedin_oauth/success
用于Web视图的委托 通知
答案 1 :(得分:0)
由于网址连接错误,您的重定向网址存在问题。
看,错误说:"A server with the specified hostname could not be found"
。这意味着您没有连接互联网,或者您的服务提供商的DNS列表中找不到您的服务器主机名,或者您的服务器网址错误。
你可以尝试什么。该错误指定错误网址:"NSErrorFailingURLKey=MY_REDIRECT_URL/?oauth_token=MY_OAUTH_TOKEN&oauth_verifier=MY_VERIFIER"
。您可以尝试在Mac上的Safari / Chrome / etc中打开指定的网址"MY_REDIRECT_URL/?oauth_token=MY_OAUTH_TOKEN&oauth_verifier=MY_VERIFIER"
,看看会发生什么。如果您看到相同的错误,则应仔细检查重定向网址。如果成功打开,则说明iOS应用程序存在问题。