2012-04-16 13 views
5

コード400(不正な要求)で応答:Instagramの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"}} 

この

は応答です。これはバグでしょうか?どこで報告できますか?

InstagramのAPIドキュメント:http://instagram.com/developer/endpoints/relationships/

+0

あなたは解決策を見つけましたか? – SuN

+0

解決策は見つかりましたか? – MysticForce

答えて

7

問題は、POSTデータとしてアクションを送信していないことです。私はちょうど昨日の正確な問題を抱えていました。

urlでaccess_tokenを送信する必要がありますが、action = followはリクエストのポストデータにある必要があります。

+0

まさに、私もそれを発見しました。ありがとう。 – dislick

+0

ポストデータの一部としてどのように指定しますか?私はiosでAFネットワーキングを使用しており、@ {"action":@ "follow"}辞書をパラメータとして渡しています。 – nickthedude

+0

@zolipapa私はアクションを渡しています= 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を追加します。

関連する問題