質問
POST実行処理でREST API連携を行っています。HTTP 400エラー時にContent-Typeが「application/json」のレスポンスが返却されますが、実際のレスポンスボディがプレーンテキスト形式のため、JSON解析エラー(javax.json.stream.JsonParsingException)が発生します。エラーレスポンスの内容を取得することは可能でしょうか。
回答
POST実行処理では、HTTPステータスがエラー(400番台、500番台)かつContent-Typeヘッダーが「json」で終わる場合、レスポンスボディをJSONとして解析する仕様となっています。
実際のレスポンスのフォーマットがJSONではなくプレーンテキストである場合、解析エラーが発生します。本動作はHULFT Squareの正常動作の範囲内となるため、回避策はございません。
以下2点のうち、いずれかの対処方法をご検討ください。
1. 400はクライアントエラーであるため、クライアントエラーが発生しないよう入力データのバリデーションなどを行う
2. 実レスポンスの形式とContent-Typeを合わせるようサービス提供元にご相談する
[参考]
コメント
0件のコメント
記事コメントは受け付けていません。