UTF-8以外のマルチバイト文字で{request.http.parameter}が文字化けする問題

Document created by Ryoji_Kadota Employee on Sep 11, 2017Last modified by Ryoji_Kadota Employee on Sep 12, 2017
Version 1Show Document
  • View in full screen mode


文書番号: JTEC002600
製品名: CA API Gateway(ソフトウェア)
バージョン: ALL
OS: ALL

◆質問
クライアントからの文字コードがSHIFT-JISのマルチバイト文字(日本語)のメッセージをAPI Gatewayがコンテキスト変数${request.http.parameter}で取得した場合、文字化けが発生しました。
文字コードがUTF-8のマルチバイト文字のメッセージでは文字化けは発生しません。


API Gatewayはマルチバイト文字としてUTF-8以外はサポートしていないのでしょうか?

 

 

◆回答
API Gatewayではマルチバイトの文字列をURLエンコードして処理します。

API Gateway上でマルチバイト文字列を展開(Policy Manager上で表示、ログへの出力、リクエストメッセージを加工等)する場合はUTF-8としてデコードします。
そのため、UTF-8以外の文字コードは文字化けを起こすのでご注意ください。

現状では、API Gateway上でマルチバイト文字を展開(Policy Manager上で表示、ログへの出力、リクエストメッセージを加工等)する場合はUTF-8のみのサポートとなります。

 

API Gateway上でマルチバイト文字を展開しない場合は、URLエンコードされた状態での処理のため、UTF-8以外の文字コードでも問題ありません。

 

 

                                                                                                                                                                    
この情報は、CA Support Online に掲載されている以下のナレッジベースを翻訳、加筆したものです。
TEC1184434 : multi-byte characters(not UTF-8) are garbled in {request.http.parameter}.

Attachments

    Outcomes