<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Andesh Chogle</title>
    <description>The latest articles on DEV Community by Andesh Chogle (@andeshchogle).</description>
    <link>https://dev.to/andeshchogle</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F30719%2Ff5bbf1f6-d5cc-41ba-a231-09b92656fb83.jpg</url>
      <title>DEV Community: Andesh Chogle</title>
      <link>https://dev.to/andeshchogle</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/andeshchogle"/>
    <language>en</language>
    <item>
      <title>DNS Records Explained</title>
      <dc:creator>Andesh Chogle</dc:creator>
      <pubDate>Thu, 13 Jun 2019 20:07:28 +0000</pubDate>
      <link>https://dev.to/andeshchogle/dns-records-explained-2h8a</link>
      <guid>https://dev.to/andeshchogle/dns-records-explained-2h8a</guid>
      <description>&lt;p&gt;&lt;em&gt;Cross-posted from : &lt;a href="https://www.andeshchogle.com/blog/post/dns-records-explained/"&gt;https://www.andeshchogle.com/blog/post/dns-records-explained/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  WHAT IS DNS
&lt;/h4&gt;

&lt;p&gt;When you enter a website URL in your browser's address bar, you are greeted with the pages from that website. Have you ever wondered where those pages come from? They come from a server somewhere on the internet. When you enter a link in the browser's address bar, what you are really doing is requesting that server to send you those pages. &lt;/p&gt;

&lt;p&gt;There are millions of such servers running on the internet. So how does your browser know which server to send that request to? This is where DNS comes into picture. DNS stands for &lt;strong&gt;D&lt;/strong&gt;omain &lt;strong&gt;N&lt;/strong&gt;ame &lt;strong&gt;S&lt;/strong&gt;ystem.&lt;/p&gt;



&lt;h4&gt;
  
  
  THE DOMAIN NAME SYSTEM
&lt;/h4&gt;

&lt;p&gt;Every server on the internet has a specific string of numbers assigned to it, known as that server's IP address. But these IP address being just seemingly random strings or numbers are hard to memorize. Therefore there is a system which maps these IP addresses to easy-to-remember names. Such names are called &lt;em&gt;Domain Names&lt;/em&gt; (e.g. &lt;a href="http://www.google.com"&gt;www.google.com&lt;/a&gt;). These mappings are stored on special servers known as &lt;em&gt;Domain Name Servers&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;So whenever you request a website using its domain name, your browser contacts the &lt;em&gt;Domain Name Server&lt;/em&gt; and fetches the IP address mapped to that domain name. It then sends the web page request to that IP address.&lt;/p&gt;



&lt;h4&gt;
  
  
  DNS RECORDS
&lt;/h4&gt;

&lt;p&gt;The mapping between a domain name and an IP address that we saw above is known as an &lt;strong&gt;A Record (or, Address Record)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;There are many kinds of mappings that do more than just create a relationship between a domain name and an IP address. We will explore them in the following sections&lt;/p&gt;



&lt;h4&gt;
  
  
  1. A RECORD (Address Record)
&lt;/h4&gt;

&lt;p&gt;As we saw above, an A Record is a mapping between a domain name and an IP address;&lt;/p&gt;

&lt;p&gt;For Example,&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Domain Name&lt;/th&gt;
&lt;th&gt;IP Address&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://www.google.com"&gt;www.google.com&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;216.58.203.164&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://www.gmail.com"&gt;www.gmail.com&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;172.217.163.37&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://www.facebook.com"&gt;www.facebook.com&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;157.240.24.35&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;



&lt;h4&gt;
  
  
  2. AAAA RECORD (IPv6 Address Record)
&lt;/h4&gt;

&lt;p&gt;An IP address has two flavors: IPv4 and IPv6. An IPv4 is a 32 bit (4 bytes) representation of a server's address. But as you can imagine, the numbers represented by just 4 bytes is not enough to address all the servers on the internet - an ever increasing number. IPv6 resolves this issue by representing the addresses in 128 bits (16 bytes).&lt;/p&gt;

&lt;p&gt;An AAAA Record is a mapping between a domain name and its IPv6 address.&lt;/p&gt;



&lt;h4&gt;
  
  
  3. CNAME RECORD (Canonical Name Record)
&lt;/h4&gt;

&lt;p&gt;A CNAME record represents a mapping between two domain names. This is to say that one domain name is just an alias (a canonical name) of another domain name. So when Domain Name Server receives a request to resolve a domain name into an IP address, and if that domain name is a CNAME record mapping to another domain name, the DNS system continues the IP resolution process from that second canonical domain.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Domain Name&lt;/th&gt;
&lt;th&gt;Record Type&lt;/th&gt;
&lt;th&gt;Mapping&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;bar.example.com&lt;/td&gt;
&lt;td&gt;CNAME&lt;/td&gt;
&lt;td&gt;foo.example.com&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;foo.example.com&lt;/td&gt;
&lt;td&gt;A&lt;/td&gt;
&lt;td&gt;216.58.203.164&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Now when you request the IP address (i.e. the A record) of bar.example.com, the DNS system sees that it has a CNAME record associated with it with a value of foo.example.com. So it continues its search for IP address from foo.example.com and returns 216.58.203.164&lt;/p&gt;



&lt;h4&gt;
  
  
  4. MX RECORD (Mail Exchange Record)
&lt;/h4&gt;

&lt;p&gt;An MX Record specifies which mail servers will accept/process email messages sent to users on that domain name&lt;/p&gt;

&lt;p&gt;For example (simplified for understanding),&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Domain Name&lt;/th&gt;
&lt;th&gt;Record Type&lt;/th&gt;
&lt;th&gt;Mapping&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;example.com&lt;/td&gt;
&lt;td&gt;MX&lt;/td&gt;
&lt;td&gt;server1.mymailservers.com&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;example.com&lt;/td&gt;
&lt;td&gt;MX&lt;/td&gt;
&lt;td&gt;server2.mymailservers.com&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;In the above example, you are specifying that there are two mail servers (i.e. &lt;em&gt;server1.mymailservers.com&lt;/em&gt; and &lt;em&gt;server2.mymailservers.com&lt;/em&gt;) which will accept email messages on behalf of &lt;em&gt;example.com&lt;/em&gt; domain. So if I send an email to &lt;a href="mailto:contact@example.com"&gt;contact@example.com&lt;/a&gt; from &lt;a href="mailto:cooluser@gmail.com"&gt;cooluser@gmail.com&lt;/a&gt;, the Gmail's mail server does a DNS lookup for example.com's MX records and finds &lt;em&gt;server1.mymailservers.com&lt;/em&gt; and &lt;em&gt;server2.mymailservers.com&lt;/em&gt; and sends the email message to them.&lt;/p&gt;



&lt;h4&gt;
  
  
  5. OTHER TYPES OF RECORDS
&lt;/h4&gt;

&lt;p&gt;There are many other types of DNS records used for a lot of different scenarios - NS, PTR, SOA, SRV, TXT, URI, etc.&lt;/p&gt;



&lt;h4&gt;
  
  
  REFERENCES
&lt;/h4&gt;

&lt;p&gt;1: &lt;a href="https://en.m.wikipedia.org/wiki/List_of_DNS_record_types"&gt;https://en.m.wikipedia.org/wiki/List_of_DNS_record_types&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2: &lt;a href="https://tools.ietf.org/html/rfc1034"&gt;https://tools.ietf.org/html/rfc1034&lt;/a&gt;&lt;/p&gt;

</description>
      <category>domainnamesystem</category>
      <category>domainnameserver</category>
      <category>domain</category>
      <category>dns</category>
    </item>
    <item>
      <title>HTTP Verbs Simplified</title>
      <dc:creator>Andesh Chogle</dc:creator>
      <pubDate>Thu, 13 Jun 2019 19:48:26 +0000</pubDate>
      <link>https://dev.to/andeshchogle/http-verbs-simplified-5bib</link>
      <guid>https://dev.to/andeshchogle/http-verbs-simplified-5bib</guid>
      <description>&lt;p&gt;&lt;em&gt;Cross-posted from : &lt;a href="https://www.andeshchogle.com/blog/post/http-verbs-simplified/"&gt;https://www.andeshchogle.com/blog/post/http-verbs-simplified/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  WHAT IS A URL (OR A URI)
&lt;/h4&gt;

&lt;p&gt;URL, or Uniform Resource Locator (URI, or Uniform Resource Identifier) is a way to locate a resource on a network.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://www.contoso.com/users/1"&gt;http://www.contoso.com/users/1&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We could explain the above URL as: it identifies a user with “Id” of 1, present in “users” collection on the network pointed to by “www.contoso.com” and can be accessed over “http” protocol.&lt;/p&gt;

&lt;p&gt;Example 2:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://www.contoso.com/users"&gt;http://www.contoso.com/users&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The above URL identifies a “users” collection on the network pointed to by “www.contoso.com” and can be accessed over “http” protocol.&lt;/p&gt;



&lt;h4&gt;
  
  
  THE PART THAT HTTP PLAYS
&lt;/h4&gt;

&lt;p&gt;Now that we have located a resource using a URL, we can do various things to it using HTTP as our protocol of “doing various things to that resource”. HTTP standard has some predefined “&lt;a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html"&gt;verbs&lt;/a&gt;” (or actions) that we can use. Each of these verbs has a predefined behavior in terms of:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;What input is required to use that verb (i.e. to carry out that action)&lt;/li&gt;
&lt;li&gt;What should we expect in return when that action is executed&lt;/li&gt;
&lt;li&gt;What happens if we execute that same verb more than once on the same resource&lt;/li&gt;
&lt;li&gt;What happens if the URL is wrong, i.e. if the URL is pointing to a non-existent resource&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;What follows is a list of most commonly used HTTP Verbs and their behavior.&lt;/p&gt;



&lt;h4&gt;
  
  
  GET
&lt;/h4&gt;

&lt;p&gt;As the name suggests, executing GET on a URL gets you the resource pointed by that URL. The response of executing GET will usually have a status code of 200 (i.e. “OK”, i.e. the request was successfully executed), and the body of that response will be the actual resource.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;GET&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;users&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;In the above example, we will get a user with id 1 form the “users” collection.&lt;/p&gt;

&lt;p&gt;If the user with id 1 does not exist, or if the users collection itself does not exist, the request will return with a status code 404 (Not Found).&lt;/p&gt;

&lt;p&gt;By standard, a GET request is idempotent. In simple terms, this means that from a server’s perspective, executing the the request more than once will have the same effect as executing the request just once. For example, if we execute the same GET request more than once, the server should remain in the same state as if the request is executed just once.&lt;/p&gt;



&lt;h4&gt;
  
  
  POST
&lt;/h4&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;POST&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;users&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;firstName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;lastName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Doe&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;profilePic&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;http://www.contoso.com/media/johndoe.jpg&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="err"&gt;        &lt;/span&gt;&lt;span class="nx"&gt;city&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Pune&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;        &lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Maharashtra&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;        &lt;/span&gt;&lt;span class="nx"&gt;country&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;India&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;In the above example we are executing a POST against the URL “/users”. The request body contains a representation of a user in JSON format. In this example, we are saying to the server, “accept this resource as a user under the /users collection”. Depending on the business logic, the server may then create a user object under “users” collection, or do some similar thing.&lt;/p&gt;

&lt;p&gt;If the server creates the user, it should return a 201 (Created) status code. If the server chooses to do something else with the posted user then it may return 200 (OK) status code.&lt;/p&gt;

&lt;p&gt;The POST request is neither required nor expected to be idempotent. This means that if we execute a POST request more than once, each request will have its own effect on the server. From server’s perspective, executing it more than once is not the same as executing it just once. In case of the the above POST request, executing it once creates a user, executing it twice will create a duplicate user.&lt;/p&gt;



&lt;h4&gt;
  
  
  PUT
&lt;/h4&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;PUT&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;users&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;firstName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;lastName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Doe&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;profilePic&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;http://www.contoso.com/media/johndoe.jpg&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="nx"&gt;address&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="err"&gt;        &lt;/span&gt;&lt;span class="nx"&gt;city&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Pune&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;        &lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Maharashtra&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="err"&gt;        &lt;/span&gt;&lt;span class="nx"&gt;country&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;India&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
&lt;span class="err"&gt;    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;In the above PUT request, we are saying to the server, “take this user resource and put it at the /users/1 location”.&lt;/p&gt;

&lt;p&gt;The server is expected to put the supplied resource at “/users/1” location. If a resource is already present at the “/users/1” location, the server is expected to consider the supplied user resource as the updated version of the resource and replace the old one with the new one.&lt;/p&gt;

&lt;p&gt;If the request results in the server creating the new resource, the server should respond with a 201 (Created) status code. If the request results in updating the existing resource, the server may reply with a 200 (OK) status code.&lt;/p&gt;

&lt;p&gt;The PUT request is expected to be idempotent by the standard. This means that executing the same PUT request multiple times will leave the server in the same state as executing it just once – i.e. with just one user located at /users/1&lt;/p&gt;



&lt;h4&gt;
  
  
  DELETE
&lt;/h4&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;DELETE&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;users&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Simply stated, a DELETE will request the server to delete the resource present at the specified location. In the above example, the DELETE request will delete the user located at /users/1&lt;/p&gt;

&lt;p&gt;The server should respond with a 200 (OK) status code if it deletes the resource, or 202 (Accepted), if it has accepted the request and has not deleted the resource yet, but will delete it later.&lt;/p&gt;

&lt;p&gt;The DELETE is also expected to be idempotent. So, executing the DELETE request “DELETE /users/1” more than once will leave the server in the same state as executing “DELETE /users/1” just once – that is, with no user at /users/1 location.&lt;/p&gt;

&lt;p&gt;There are other verbs too such as HEAD, OPTIONS, PATCH, etc., but the above ones are the four most commonly used.&lt;/p&gt;

&lt;p&gt;This article is simplified for better understandability. The most authentic place to learn about these verbs is the World Wide Web Consortium (W3C) website itself. So for deep diving into the subject, you may want to head over to &lt;a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html"&gt;http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html&lt;/a&gt;&lt;/p&gt;



&lt;h4&gt;
  
  
  REFERENCES
&lt;/h4&gt;

&lt;p&gt;RFC 2616, Section 9: &lt;a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html"&gt;http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>put</category>
      <category>post</category>
      <category>get</category>
      <category>httpverbs</category>
    </item>
  </channel>
</rss>
