Skip to main content
Please wait...
The application/x-www-form-urlencoded MIME Type
30 Mar, 2025

The application/x-www-form-urlencoded MIME Type

The application/x-www-form-urlencoded MIME type is used to encode key-value pairs in HTTP requests. When data is sent using this encoding, it is formatted as a query string, where each key-value pair is separated by an ampersand (&), and keys are separated from values by an equals sign (=). Special characters are percent-encoded to ensure safe transmission over the web. 

Common Use Cases

  • Form Submission: 

    • HTML Forms: When a user submits a form on a website, the data is often encoded using application/x-www-form-urlencoded and sent to the server via an HTTP POST request. 

    • GET Requests: This encoding is also used in the query string of a URL when data is sent via an HTTP GET request. 

  • API Requests: 

    • Web APIs: Some APIs accept data in this format, especially when dealing with simple key-value pairs. It's commonly used in RESTful APIs for sending data in the body of POST requests. 

  • URL Encoding: 

    • Query Parameters: When adding parameters to a URL, application/x-www-form-urlencoded ensures that special characters are properly encoded, making the URL safe to use. 

Example

If you have a form with fields for name and age, and the user enters "John Doe" and "30", the encoded data would look like this: 

name=John+Doe&age=30 
  

Here, spaces are replaced with + and special characters are percent-encoded. 

Setting the Content-Type Header

To set the Content-Type header to application/x-www-form-urlencoded in an HTTP request, you can use the following syntax: 

POST /submit-form HTTP/1.1 
Host: example.com 
Content-Type: application/x-www-form-urlencoded 
 
name=John+Doe&age=30 
  

In this example, the Content-Type header is set to application/x-www-form-urlencoded, indicating that the body of the request contains URL-encoded form data. 

This encoding method is simple and widely supported, making it a popular choice for transmitting form data and simple key-value pairs over the web.