1

我正在使用以下代码

 - (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

我已经正确设置了东西。它需要我到linkedIn登录页面,登录后授予权限我收到此错误

无法加载页面错误域=NSURLErrorDomain 代码=-1003“找不到具有指定主机名的服务器。” 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=找不到指定主机名的服务器。, NSUnderlyError= 0x810ddc0 "找不到指定主机名的服务器。"}

怎么了?

是不是因为

- (OAToken *)linkedInEngineAccessToken:(RDLinkedInEngine *)engine {
            return [OAToken rd_tokenWithUserDefaultsUsingServiceProviderName:@"LinkedIn" prefix:@"My app name"];
        }
4

2 回答 2

1

问题来自http://www.devbee.ca没有启动和运行。我不知道您所指的代码或配置中的哪一点http://www.devbee.ca,但这就是错误所在。

我猜在您的 LinkedIn 应用程序的配置中,您已将其设置OAuth Accept Redirect URLhttp://www.devbee.ca,这是一个不存在的 URL。但这只是一个猜测,您需要四处挖掘以找出 LinkedIn 将您重定向到http://www.devbee.ca的原因。

更新

您似乎需要http://linkedin_oauth/success在应用程序的配置中将此 OAuth 接受重定向 URL 设置为。它在GitHub 项目的 How To 中说明了这一点:

最重要的是,必须将 OAuth 重定向 URL 设置为: http://linkedin_oauth/success以便通知 Web 视图的委托

于 2012-10-18T16:32:32.897 回答
0

由于 URL 连接错误,这是您的重定向 url 有问题。

看,错误说:"A server with the specified hostname could not be found"。这意味着您没有互联网连接,或者在您的提供商的 DNS 列表中找不到您的服务器主机名,或者您的服务器 url 错误。

你可以尝试什么。错误指定错误 url: "NSErrorFailingURLKey=MY_REDIRECT_URL/?oauth_token=MY_OAUTH_TOKEN&oauth_verifier=MY_VERIFIER"。您可以尝试在 Mac 上的 Safari/Chrome/etc 中打开指定的 url "MY_REDIRECT_URL/?oauth_token=MY_OAUTH_TOKEN&oauth_verifier=MY_VERIFIER",看看会发生什么。如果您看到相同的错误,您应该仔细检查您的重定向 URL。如果成功打开,则说明 iOS 应用程序有问题。

于 2012-10-14T21:07:14.813 回答