2012-04-16 4 views
5

코드 400 (잘못된 요청) 응답 :인스 타 그램의 API가 나는 포스트를 통해이 URL을 보낸

https://api.instagram.com/v1/users/XXX/relationship?action=unfollow&access_token=YYY 

XXX가 유효한 사용자 ID, 나는 여러 번 것을 확인했습니다. 토큰 (YYY)도 정확합니다. 내가 따라 행동 = 팔로우를 취소 = 행동을 시도했습니다

{"meta":{"error_type":"APIInvalidParametersError","code":400,"error_message":"please supply action=approve,ignore,follow,block,unblock,unfollow"}} 

:

는 반응이다. 이것은 가능한 버그일까요? 어디에서 신고 할 수 있습니까?

인스 타 그램의 API 문서는 : http://instagram.com/developer/endpoints/relationships/

+0

해결책을 찾았습니까? – SuN

+0

해결책을 찾았습니까? – MysticForce

답변

7

문제는 POSTDATA로 작업을 전송하지 않는 것입니다. 나는 어제 정확한 문제가 있었다.

url에서 access_token을 보내야하지만 action = follow는 요청의 postdata에 있어야합니다!

+0

정확하게, 나는 그것을 역시 발견했다. 감사. – dislick

+0

포스트 데이터의 일부로 어떻게 지정합니까? 나는 ios에서 AF 네트워킹을 사용하고 있으며, @ { "action": @ "follow"} 사전을 매개 변수로 전달하고있다. – nickthedude

+0

@ zolipapa action = mutablerequest의 게시물 본문을 따르지만 아무 것도 얻지 못했습니다 ... 이 문제를 어떻게 해결합니까? –

1
NSString *initialURL = [NSString stringWithFormat:@"https://api.instagram.com/v1/users/USER_ID/relationship?access_token=ACCESS TOKEN"]; 
NSURL *url=[NSURL URLWithString:initialURL]; 

NSString *key = [NSString stringWithFormat:@"action=follow"]; 
NSData *mastData = [key dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; 
NSString *mastLength = [NSString stringWithFormat:@"%d",[mastData length]]; 

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
[request setURL:url]; 
[request setHTTPMethod:@"POST"]; 
[request setValue:mastLength forHTTPHeaderField:@"Content-Length"]; 
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
[request setHTTPBody:mastData]; 
NSURLConnection *con=[[NSURLConnection alloc]initWithRequest:request delegate:self]; 
[con start]; 
+0

내 생명을 구했어 !! 왜 그들은 문서에서 이것을 언급하지 않습니까? – Curnelious

0

또한 인증하는 동안 적절한 범위를 사용해야합니다.

해당 인증 URL에 scope=like+comments+relationships을 추가하십시오.

관련 문제