繁体   English   中英

在iPhone中使用linkedin API检索连接时收到错误

[英]getting error when retrieving connections using linkedin api in iphone

我有一个将我的Linkedin集成到我的应用程序中的应用程序。我想获取已登录用户的连接。为此,我完成了代码,但返回错误:

{
  "errorCode": 0,
  "message": "Unknown authentication scheme",
  "requestId": "98TKWP0T23",
  "status": 401,
  "timestamp": 1355726431107
}

这是我完成的代码:

(NSMutableArray*) getFriendsList
{      
  NSString *url1 = [NSString stringWithFormat:@"http://api.linkedin.com/v1/people/id=%@:(connections)?format=application/json",linkedinid];
  NSLog(@"%@",url1);
  NSURL *url = [NSURL URLWithString:url1];

  OAMutableURLRequest *request = [[OAMutableURLRequest alloc] 
                                         initWithURL:url
                                            consumer:consumer
                                               token:token
                                            callback:nil
                                            signatureProvider:nil];
  [request setValue:@"json" forHTTPHeaderField:@"x-li-format"];
  [request setHTTPMethod:@"POST"];

   NSError *err;
   NSURLResponse *resp;
   NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:&resp error:&err];
   NSMutableArray *arr = [[NSMutableArray alloc] init];

   if (response != nil)
   {
     NSString *stringResponse = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
     SBJSON *parser = [[SBJSON alloc] init];
     NSDictionary *linkedin_response = [parser objectWithString:stringResponse error:nil];   
   }    
}

但在stringresponse中,它返回上述错误。

尝试这个 :

- (void)getFriendsList
{
   NSURL *url = [NSURL URLWithString:@"http://api.linkedin.com/v1/people/~/connections"];
   OAMutableURLRequest *request = [[OAMutableURLRequest alloc] initWithURL:url
                                consumer:oAuthLoginView.consumer
                                   token:oAuthLoginView.accessToken
                                callback:nil
                       signatureProvider:nil];

   [request setValue:@"json" forHTTPHeaderField:@"x-li-format"];

   OADataFetcher *fetcher = [[OADataFetcher alloc] init];
   [fetcher fetchDataWithRequest:request
                     delegate:self
            didFinishSelector:@selector(networkApiCallResult:didFinish:)
              didFailSelector:@selector(networkApiCallResult:didFail:)];    
}

- (void)networkApiCallResult:(OAServiceTicket *)ticket didFinish:(NSData *)data
{
   NSString *responseBody = [[NSString alloc] initWithData:data
                                               encoding:NSUTF8StringEncoding]; 
   NSDictionary *demo = [responseBody objectFromJSONString];


   NSMutableArray *connections = [[NSMutableArray alloc] init];

   for(int i=0;i<[[demo objectForKey:@"_count"] intValue];i++)
   {
      NSDictionary *person = [NSString stringWithFormat:@"%@ %@",[[[[responseBody objectFromJSONString] 
                                                                  objectForKey:@"values"] 
                                                                 objectAtIndex:i]
                                                                objectForKey:@"firstName"],[[[[responseBody objectFromJSONString] 
                                                                                              objectForKey:@"values"] 
                                                                                             objectAtIndex:i]
                                                                                            objectForKey:@"lastName"]];
      NSLog(@"Connection %d : %@",i,[NSString stringWithFormat:@"%@ %@",[[[[responseBody objectFromJSONString] 
                                                                         objectForKey:@"values"] 
                                                                        objectAtIndex:i]
                                                                       objectForKey:@"firstName"],[[[[responseBody objectFromJSONString] 
                                                                                                     objectForKey:@"values"] 
                                                                                                    objectAtIndex:i]
                                                                                                   objectForKey:@"lastName"]]);
     [connections addObject:person];  
   }
}

- (void)networkApiCallResult:(OAServiceTicket *)ticket didFail:(NSData *)error 
{
   NSLog(@"%@",[error description]);
}

从表面上看,您没有在帖子中传递“用户名/密码”,因此,您正在获得“未知身份验证方案”。 我不确定您是否能够在自己的应用程序中检测到已登录用户的连接,除非您将其凭据存储在应用程序中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM