POST NSURLRequest を作成する必要があり、リクエストに次の構造を渡す必要があります。
- 検査 (文字列のキーと値を持つ NSDictionaries の配列)
- プロパティ (array1 と同じ構造)
- サブカテゴリ (各辞書が特定のキーの値の配列を持つことができる NSDictionaries の配列)
すべてを連結した後の requestString は次のようになります。
?inspection[name]=inspection_name&inspection[address]=address_value&...&property[type]=property_type&....&subcategories[0][questions][0][title]=title_value&subcategories[0][questions][1][title]=title_value1&...&subcategories[1][questions][0][title]=title_valuen&...
検査とプロパティ配列についても試しましたinspection[][name]=inspection_name, property[][address]=property_address
その requestString を形成している間、次のメソッドを使用して各パラメーターをエスケープしています。
static NSString *escapeParam(NSString *param) {
param = [param stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
param = [param stringByReplacingOccurrencesOfString:@"&" withString:@"%26"];
param = [param stringByReplacingOccurrencesOfString:@"=" withString:@"%3D"];
param = [param stringByReplacingOccurrencesOfString:@"?" withString:@"%3F"];
return param;
}
そのため、次のようなものにsubcategories[0][questions][0][title]=title_value
なりますsubcategories%5B0%5D%5Bquestions%5D%5B0%5D%5Btitle%5D=title_value
明らかに、私は何か間違ったことをしており、この requestString を適切に形成する方法がわかりません。これは、リクエストを発行すると、応答で HTTP エラー 400 の不正なリクエストが返されるためです。
誰かが私を正しい方向に向けることができますか?
本当にありがとう!