2

私はobjective-cが初めてで、以下の方法でHTTP POST本体を作成するためのより良い方法があるかどうか疑問に思っています。

- (NSData*) generateBody: (NSDictionary*) requestParams {
NSMutableData *body = [[[NSMutableData alloc] initWithCapacity:1024] autorelease]; 

BOOL firstParam = YES;

for (NSString* key in requestParams) {
    NSString *value = [requestParams valueForKey:key];

    if ( firstParam ) {
        firstParam = NO;
    } else {
        [body appendData:[@"&" dataUsingEncoding:NSUTF8StringEncoding]];
    }

    [body appendData:[key dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[@"=" dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[value dataUsingEncoding:NSUTF8StringEncoding]];
}

return body;

}

4

2 に答える 2

0

JSON 形式のデータを受け入れる場合は、Apple ドキュメントの NSJSONSerialization を調べてみてください。よく働く。

于 2013-04-10T20:02:10.423 に答える
0

はい。

ASIHTTPRequest、具体的には ASIFormDataRequest クラスを見てください(そのリンクで検索してください)

これは NSURLConnection のより優れたバージョンのようなものです :) また、Web リクエストを行う業界標準の方法になりつつあり、すべての iOS 開発者ツール ライブラリの不可欠な部分になっているようです :)

于 2011-01-20T12:11:43.707 に答える