2014-05-25 1 views
2

Garmin Connect에서 콘텐츠를 다운로드 할 라이브러리를 만들려고합니다.Garmin Connect API for iOS

가 너무 많은 문서가 아니다, 또는 공공 아니지만, 가민 API는 (BasicAutentication 쿠키 기준) 세션을 생성하는 데 필요한 것 같습니다 큰 Tapiriik project

에 내 코드의 기초를 시도하기 전에 수 콘텐츠를 다운로드하십시오.

NSURLConnection 및 NSURLSession을 사용하여 성공적으로 수행하려고했습니다 (동기화/비동기 & 대리자 및 CompletionHandler도 시도 함).

// POST request with the params I have found on the tapiriik example 
[NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://connect.garmin.com/signin"]]; 
NSString *post = [NSString stringWithFormat:@"j_id1=javax.faces.ViewState&login=login&login:loginUsernameField=%@&login:password=%@&login:signInButton=Sign In", theUsername, thePassword]; 
[request setHTTPMethod:@"POST"]; 
[request setHTTPBody:[post dataUsingEncoding:NSUTF8StringEncoding]]; 
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 

응답이 200이고 사용자 프로필을 확인한 결과 성공적으로 작동합니다. 내가 활동을 다운로드하려고하면 그러나 나는 403

request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://connect.garmin.com/proxy/activity-search-service-1.2/json/activities?start=0&limit=10"]]; 
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 

PD가 나타날 나는 다른 GitHub의 프로젝트를 확인하지만, 그들 모두가 tapiriik 코드

어떤 제안으로 유사한 방식으로 작동?

답변