2012-01-05 9 views
1

我々はIIS7上で、.NET 4を使用して我々のテスト環境の1つを切り替えました。生産は、.NETを使用しているようにASP.NET 4/IIS7でクエリ文字列をhtmlエンコードするのはなぜですか?

http://www.example.com/page.aspx?param1=<foo>&param2=<foo> 

として2

特定のURLは、)(Request.Url.ToStringに<または>を探している私たちのstringindexコードでキャッチ取得されていません。どうして?私たちがチェックすると、彼らは&lt;foo&gt;と表示されているので。何が起こっているかこれは

.NET 2で働いていましたか?

注:書式設定に誤りがありません。私は本当に意味するHTMLエンコード。

答えて

0

、あなたがURLデコードにクエリ文字列を必要とする入力したものをつかむしたいので、もし、クエリ文字列内のすべてのデータが、正しく解析できるようにするにはURLエンコードする必要があります。

HttpServerUtility.UrlDecode(Request.QueryString); 

http://msdn.microsoft.com/en-us/library/6196h3wt.aspx

URLエンコードは、すべてのブラウザは、URL文字列のテキストを正しく送信するようになります。疑問符(?)、アンパサンド(&)、スラッシュ記号(/)、空白などの文字は、一部のブラウザで切り捨てられたり破損したりすることがあります。結果として、これらの文字は、リクエスト文字列内のブラウザによって文字列が再送信されるタグまたはクエリ文字列でエンコードされなければなりません。

+1

いいえ、データは** HTML ** * URL *エンコードされ、いないエンコードされています。 – Broam

関連する問題