0

リクエストの失敗ブロックで Error-Message の値を取得する必要があります。

エラーは次のとおりです。

エラー Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad request (400)" UserInfo=0x165151b0 {NSErrorFailingURLKey= http://203.125.112.203:8090/megumi01/api/zipData?lastSynced= 1441161682、com.alamofire.serialization.response.error.response= { URL: http://203.125.112.203:8090/megumi01/api/zipData?lastSynced=1441161682 } { ステータス コード: 400、ヘッダー { "Access-Control-Allow-Headers" = "x-requested-with, Authorization, Content-Type, Accept"; "Access-Control-Allow-Methods" = "POST、GET、OPTIONS、DELETE、PUT"; "Access-Control-Allow-Origin" = "*"; 「アクセス制御最大年齢」= 3600; "Cache-Control" = "no-cache, no-store, max-age=0, must-revalidate"; 接続 = 閉じる; "Content-Type" = "application/json;charset=UTF-8"; Date = "Wed, 02 Sep 2015 10:38:57 GMT"; 「エラーコード」= 0808; "Error-Message" = "アップデートはありません"; 有効期限 = 0; プラグマ = "キャッシュなし"; サーバー = "Apache-Coyote/1.1"; 「転送エンコーディング」=アイデンティティ; "X-Application-Context" = "application:9090"; 「X-Content-Type-Options」= nosniff; "X フレーム オプション" = 拒否; "X-XSS-Protection" = "1; モード = ブロック"; } }, NSLocalizedDescription=リクエストが失敗しました: 不正なリクエスト (400)}

「エラー」を NSData に入れてみたので、NSDictionary に変換できましたが、nil になりました。

カスタム ヘッダー「Error-Message」の値を取得する方法を教えてください。

ティア!

4

2 に答える 2

0

率直に考えた結果、AFHTTPRequestOperation の失敗ブロックでカスタム ヘッダーを取得する適切な方法を取得することができました。

NSDictionary *userInfo = [error userInfo];
NSHTTPURLResponse *alamofireResponse = [userInfo objectForKey:@"com.alamofire.serialization.response.error.response"];
NSDictionary *allHeaders = [alamofireResponse allHeaderFields];
NSString *customMessage = [allHeaders objectForKey:@"Error-Message"];
于 2015-09-09T09:17:37.917 に答える
0

以下のコードが役立つ場合があります。それを試してみてください。

NSLog(@"status code  :%ld",(long)[operation.response statusCode]);
NSLog(@"Failure Response %@, %@", error, operation.response.description);
于 2015-09-02T11:58:35.837 に答える