Flex を使用して ISO-8859-1 の SOAP リクエストを送信するにはどうすればよいですか?
-
09-06-2019 - |
質問
Flex はデフォルトで UTF-8 を使用します。actionscript WebService クラスで別のエンコーディング/文字セットを指定する方法が見つかりませんでした。
解決
うーん、ここを見てください:
http://www.adobe.com/devnet/flex/articles/struts_06.html
このサンプルは、mxml ファイルを iso-8859-1 として宣言するとうまくいく可能性があることを示唆していると思いますが、私は実際にはそうは思いません。
間違っているかもしれませんが、私の知る限り、Flash プレーヤーは UTF-8 エンコーディングのみを処理します。公式ページへのリンクを探したのですが、見つかりませんでした。
その場合は、次のいずれかを実行します。
a) UTF-8 エンコーディングを処理するように Web サービスを更新します。
b) それが不可能な場合は、UTF-8 を受け入れる独自の Web サービスへの呼び出しをプロキシしてから、実際の Web サービスを呼び出します。
古い system.useCodepage=true トリックを試してみるのもいいかもしれませんが、ユーザーが Linux または Mac を使用している場合には機能しませんでした。使用には注意してください。
他のヒント
フレックスコンパイラにエンコーディングを指定する方法もありますが、それは機能しないようです。現時点で私が見つけた唯一の解決策は、受信リクエストをサーバー側で再エンコードすることです。この制限がフレックスのリファレンスドキュメントに白地に黒で書かれていないことに驚きました。
所属していません StackOverflow