3

誰かがこれについて何か要求がありましたか?私はそれを完全に理解することができません、そして今私は賢く見えない75の別々のHTTPリクエストのように送信しています、そして私はそのような大きなマルチクエリで問題に遭遇します。

(ただし、バッチリクエストでは、3Gで失われる可能性のあるより大きな結果が返されるため、タイムアウトになる可能性が高くなるのではないかと心配しています)。

誰かがobjective-cでバッチリクエストをコーディングできましたか、それとも非常に大きなクエリについて他の提案がありますか?コードを添付するための適切な形式は知っていますが、どこから始めればよいのかさえわかりませんでした。

4

1 に答える 1

9

ドキュメントで説明されているように、GraphAPIを使用してバッチリクエストを実行するためのオプションがあります。

curl \
    -F 'access_token=…' \
    -F 'batch=[ \
            {"method": "GET", "relative_url": "me"}, \
            {"method": "GET", "relative_url": "me/friends?limit=50"} \
        ]'\
    https://graph.facebook.com

1つのバッチリクエストには現在50回の操作の制限があることに注意してください。

Facebook iOS SDKでの実装は、次のようになります(Facebookインスタンスはどこにfacebookありますか)。

NSString *req01 = @"{ \"method\": \"GET\", \"relative_url\": \"me\" }";
NSString *req02 = @"{ \"method\": \"GET\", \"relative_url\": \"me/friends?limit=50\" }";
NSString *allRequests = [NSString stringWithFormat:@"[ %@, %@ ]", req01, req02];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObject:allRequests forKey:@"batch"];
[facebook requestWithGraphPath:@"me" andParams:params andHttpMethod:@"POST" andDelegate:self];
于 2012-05-08T01:09:19.313 に答える