AFNetworkingを使用してマルチパートフォームをWebサーバーに送信していますが、に問題がありますAFHTTPRequestOperation
。それは成功であり、私がそれを開始した後、失敗ブロックは決して呼び出されません。
これが私のコードです(履歴書)
NSMutableURLRequest *request = [[ServerAPI sharedClient] multipartFormRequestWithMethod:@"POST" path:postUrl parameters:nil constructingBodyWithBlock: ^(id <AFMultipartFormData> formData) {
[formData appendPartWithFileData:picture.picture_data name:@"InputFile" fileName:picture.name mimeType:@"image/jpg"];
}];
AFHTTPRequestOperation *operation = [[ServerAPI sharedClient] HTTPRequestOperationWithRequest: request success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"Success");
} failure: ^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Failure");
}];
[operation setUploadProgressBlock:^(NSUInteger bytesRead, long long totalBytesRead, long long totalBytesExpectedToRead) {
NSLog(@"%f", (totalBytesRead / (float) totalBytesExpectedToRead));
}];
[[ServerAPI sharedClient] enqueueHTTPRequestOperation:operation];
進行状況のログを確認できますが、成功ブロックと失敗ブロックが呼び出されることはありません。
picture.picture_data
は
ServerAPIでNSData
初期化され、はのサブクラスであり、シングルトンメソッドです。UIImageJPEGRepresentation(image, 0.7)
AFHTTPClient
sharedCliend
適切なエラーメッセージがあっても、AFNetworkingがブロックを呼び出さない理由はどれですか?
皆さん、ありがとうございました!
編集
このURLの直前に同じURLでgetリクエストを実行すると、通常どおり機能します。私が使用しているURLは次のとおりです。part/_layouts/UploadEx.aspx?List=%7BD432BF97-7175-40C1-8E0D-27D8661CBC90%7D&RootFolder=%2Fpwa%2Fpart%2FLibrary&Source=http%3A%2F%2Fwww%2Emysite%2Ecom%2Fpwa%2Fpart%2FLibrary%2FForms%2FAllItems%2Easpx&IsDlg=1