Я пытаюсь интегрировать LinkedIn в мое приложение iOS, где мне нужно пройти аутентификацию, затем получить данные профиля и отправить в LinkedIn из моего приложения. Я делаю все это довольно успешно, используя этот образец проекта LinkedIn OAuth Sample Client в качестве справочника, я сделал некоторые изменения, и все работает очень хорошо. И я использую детали от LinnkedIn API, а также для реализации этого. Далее, Мне нужно отправить приглашение для подключения в LinkedIn из того же приложения. Я пробовал использовать Invitataion API.Интеграция LinkedIn в iOS: API-интерфейс приглашения не работает
Вот мой фрагмент кода:
-(void)sendInvitationToconnectTo:(NSString *)emailAddress withMessage:(NSString *)text
{
NSURL *url = [NSURL URLWithString:@"http://api.linkedin.com/v1/people/~/mailbox"];
OAMutableURLRequest *request = [[OAMutableURLRequest alloc] initWithURL:url
consumer:oAuthLoginView.consumer
token:oAuthLoginView.accessToken
callback:nil
signatureProvider:[[OAHMAC_SHA1SignatureProvider alloc] init]];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSDictionary *temp=[[NSDictionary alloc]initWithObjectsAndKeys:@"/people/[email protected]",@"_path",@"userName1",@"first-name",@"userName2",@"last-name", nil];
NSDictionary *temp2=[[NSDictionary alloc] initWithObjectsAndKeys:temp,@"person",nil];
NSArray *arr2=[[NSArray alloc]initWithObjects:temp2, nil];
NSDictionary *value=[[NSDictionary alloc]initWithObjectsAndKeys:arr2,@"values", nil];
NSDictionary *dict3=[[NSDictionary alloc]initWithObjectsAndKeys:@"friend",@"connect-type",nil];
NSDictionary *dict4=[[NSDictionary alloc] initWithObjectsAndKeys:dict3,@"invitation-request", nil];
NSDictionary *dict=[[NSDictionary alloc]initWithObjectsAndKeys:dict4,@"item-content",@"Say yes!",@"body",@"Invitation to connect.",@"subject",value,@"recipients", nil];
NSString *updateString = [dict JSONString];
NSLog(@"updateString : %@",updateString);
[request setHTTPBodyWithString:updateString];
[request setHTTPMethod:@"POST"];
OADataFetcher *fetcher = [[OADataFetcher alloc] init];
[fetcher fetchDataWithRequest:request
delegate:self
didFinishSelector:@selector(sendRequestApiCallResult:didFinish:)
didFailSelector:@selector(sendRequestApiCallResult:didFail:)];
[request release];
}
- (void)sendRequestApiCallResult:(OAServiceTicket *)ticket didFinish:(NSData *)data
{
NSLog(@"invitation sent");
[self networkApiCall];
}
- (void)sendRequestApiCallResult:(OAServiceTicket *)ticket didFail:(NSData *)error
{
NSLog(@"%@",[error description]);
}
И моя JSON строка выглядит следующим образом:
{ "тело": "Скажи да!", "Субъект": "Приглашение на подключения "" получатели. ": {" ценность ": [{" человек ": {" первое имя ":" USERNAME1" , "последнее имя": "USERNAME2", "_ путь": "/ люди/электронная почта = [email protected] "}}]}," item-content ": {" request-request ": {" connect-type ":" friend "}}}
При отправке приглашения У меня нет ошибок, и когда я отлаживаю, вызывается метод sendRequestApiCallResult:(OAServiceTicket *)ticket didFinish:(NSData *)data
, показывая Приглашение отправлено текст. Но проблема с номером . Пользователь LinkedIn не получил никакого запроса!
Может ли кто-нибудь помочь мне в этом отношении? Есть ли что-то, что я делаю неправильно в своем коде?
NB Я прошел через указанные ниже ссылки, чтобы получить решение, попробовал решения, но напрасно.
1. Invitation API - Stumped by 401 (iOS and OAuthConsumer) - SOLVED
2. linkedin connect API gives error 401 - iphone
и NSURLResponse
StatusCode Я получаю 401!
EDIT :: Решил сам. См. Мой ответ ниже.
эй .. пожалуйста, ответить на этот вопрос, если вы можете ... http://stackoverflow.com/questions/33909797/how-to-invite-friends-using-linkedin-sdk-in-ios -app –