What code page does IIS use to decode input before it is passed to an asp.net page


I'm not a server expert so please bear with me.

When a web browser passes information to a web server it encodes the url and any query string parameters. I don't know if it encodes any post input.

The web server then has to decode this. How does the web server do this? Preumably it must presume the input is in a particular character set first. Once it has done this, how then does it decode the input. Does it just do a urldecode process or is there something else to it?

Thanks a lot
Who is Participating?
sleep_furiouslyConnect With a Mentor Commented:
When the request uses a GET method, a web application may put information in query string parameters.  Anything in the URL and query string is presumed to be in US-ASCII characters ( 0 - 127 ) with some of these characters reserved for special functions (per RFC 2616).  To pass any other characters, they must be URL encoded/decoded.

When the request uses a POST method, a web application may put information in the request body.  This can be encoded in a variety of ways.  When the post is sent to the server, it will include a header for Content-Type, which will specify the format and encoding of the data in the request body.

 The HTML <form> element can specify the encoding to use for posting the data using the "enctype" attribute.  By default, an HTML form posts with request type "application/x-www-form-urlencoded".  Other than the default value, the most common enctype is probably "multipart/form-data", which is often used to include a file upload with the form post (and which does not URL encode all the data being posted).  It may also be used to avoid the overhead of URL encoding/decoding large amounts of non-ascii text.

The <form> element also has an "accept-charset" that the server that processes the form can use to specify character encodings it will accept.
All Courses

From novice to tech pro — start learning today.