@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

QueryStringの文字化けについて

1
投稿者投稿内容
手探り
常連さん
会議室デビュー日: 2006/10/20
投稿数: 24
投稿日時: 2009-03-05 18:31
お世話になります。手探りです。

開発環境:VS2005、FrameWork2.0

現在私が作成しているWebアプリケーションは、ASP.NETによって作成し、
requestEncoding、responseEncodingは共に「UTF-8」を使用しています。

この環境から
ASPで作成された別システムへアクセスするようになっています。
アクセスする際に、QueryStringに2バイト文字「あいうえお」などを渡しています。
ASP側ではEncodingが「Shift-jis」になっており、
QueryStringの2バイト文字が文字化けしてしまいます。

この2バイト文字を文字化けさせないように、ASP.NETで作成したWebアプリ側で
対処する方法はありますでしょうか?
requestEncoding、responseEncodingについては「Shift-jis」にする事はできない
事となっております。

申し訳ございませんが、ご教授の方宜しくお願い致します。
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2009-03-05 18:55
マルチバイト文字をそのまま渡すのがそもそも間違っています。
Encodingを指定できるHttpUtility.UrlEncodeメソッドを使ってURLエンコードすればよいでしょう。
http://msdn.microsoft.com/ja-jp/library/h10z5byc(VS.80).aspx
手探り
常連さん
会議室デビュー日: 2006/10/20
投稿数: 24
投稿日時: 2009-03-05 20:18
>べる様

引用:

マルチバイト文字をそのまま渡すのがそもそも間違っています。
Encodingを指定できるHttpUtility.UrlEncodeメソッドを使ってURLエンコードすればよいでしょう。
http://msdn.microsoft.com/ja-jp/library/h10z5byc(VS.80).aspx



上記の先を参考に解決できました。ありがとうございます。
UrlEncodeを使用していたのですが、第2引数の部分を正しくセット出来ておりませんでした。
初歩的な事みたいだったので、今後こういった事は事前にもっと調べて解決していきます。
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)