{"id":1138,"date":"2014-04-03T06:11:59","date_gmt":"2014-04-03T06:11:59","guid":{"rendered":"http:\/\/www.rezafaisal.net\/?p=1138"},"modified":"2014-04-03T06:11:59","modified_gmt":"2014-04-03T06:11:59","slug":"asp-net-web-api-penggunaan-get-post-put-dan-delete","status":"publish","type":"post","link":"https:\/\/www.rezafaisal.net\/?p=1138","title":{"rendered":"ASP.NET Web API : Penggunaan GET, POST, PUT dan DELETE"},"content":{"rendered":"<p>Pada kode Web API yang telah dilihat pada posting-posting sebelumnya akan kita lihat seperti berikut ini :<\/p>\n<div id=\"codeSnippetWrapper\" style=\"overflow: auto; cursor: text; font-size: 8pt; border-top: silver 1px solid; font-family: &#39;Courier New&#39;, courier, monospace; border-right: silver 1px solid; width: 97.5%; border-bottom: silver 1px solid; padding-bottom: 4px; direction: ltr; text-align: left; padding-top: 4px; padding-left: 4px; margin: 20px 0px 10px; border-left: silver 1px solid; line-height: 12pt; padding-right: 4px; max-height: 200px; background-color: #f4f4f4\">\n<pre id=\"codeSnippet\" style=\"border-top-style: none; overflow: visible; font-size: 8pt; font-family: &#39;Courier New&#39;, courier, monospace; width: 100%; border-bottom-style: none; color: black; padding-bottom: 0px; direction: ltr; text-align: left; padding-top: 0px; border-right-style: none; padding-left: 0px; margin: 0em; border-left-style: none; line-height: 12pt; padding-right: 0px; background-color: #f4f4f4\"><span style=\"color: #0000ff\">using<\/span> System;<br \/><span style=\"color: #0000ff\">using<\/span> System.Collections.Generic;<br \/><span style=\"color: #0000ff\">using<\/span> System.Linq;<br \/><span style=\"color: #0000ff\">using<\/span> System.Net;<br \/><span style=\"color: #0000ff\">using<\/span> System.Net.Http;<br \/><span style=\"color: #0000ff\">using<\/span> System.Web.Http;<br \/><br \/><span style=\"color: #0000ff\">namespace<\/span> ASPNET.WebForm.WebApp.Controllers<br \/>{<br \/>    <span style=\"color: #0000ff\">public<\/span> <span style=\"color: #0000ff\">class<\/span> ValuesController : ApiController<br \/>    {<br \/>        <span style=\"color: #008000\">\/\/ GET api\/&lt;controller&gt;<\/span><br \/>        <span style=\"color: #0000ff\">public<\/span> IEnumerable&lt;<span style=\"color: #0000ff\">string<\/span>&gt; Get()<br \/>        {<br \/>            <span style=\"color: #0000ff\">return<\/span> <span style=\"color: #0000ff\">new<\/span> <span style=\"color: #0000ff\">string<\/span>[] { <span style=\"color: #006080\">&quot;value1&quot;<\/span>, <span style=\"color: #006080\">&quot;value2&quot;<\/span> };<br \/>        }<br \/><br \/>        <span style=\"color: #008000\">\/\/ GET api\/&lt;controller&gt;\/5<\/span><br \/>        <span style=\"color: #0000ff\">public<\/span> <span style=\"color: #0000ff\">string<\/span> Get(<span style=\"color: #0000ff\">int<\/span> id)<br \/>        {<br \/>            <span style=\"color: #0000ff\">return<\/span> <span style=\"color: #006080\">&quot;value&quot;<\/span>;<br \/>        }<br \/><br \/>        <span style=\"color: #008000\">\/\/ POST api\/&lt;controller&gt;<\/span><br \/>        <span style=\"color: #0000ff\">public<\/span> <span style=\"color: #0000ff\">void<\/span> Post([FromBody]<span style=\"color: #0000ff\">string<\/span> <span style=\"color: #0000ff\">value<\/span>)<br \/>        {<br \/>        }<br \/><br \/>        <span style=\"color: #008000\">\/\/ PUT api\/&lt;controller&gt;\/5<\/span><br \/>        <span style=\"color: #0000ff\">public<\/span> <span style=\"color: #0000ff\">void<\/span> Put(<span style=\"color: #0000ff\">int<\/span> id, [FromBody]<span style=\"color: #0000ff\">string<\/span> <span style=\"color: #0000ff\">value<\/span>)<br \/>        {<br \/>        }<br \/><br \/>        <span style=\"color: #008000\">\/\/ DELETE api\/&lt;controller&gt;\/5<\/span><br \/>        <span style=\"color: #0000ff\">public<\/span> <span style=\"color: #0000ff\">void<\/span> Delete(<span style=\"color: #0000ff\">int<\/span> id)<br \/>        {<br \/>        }<br \/>    }<br \/>}<\/pre>\n<p><\/div>\n<p>Pada contoh kode di atas terdapat 5 method yang akan menjadi API dan terdiri atas 4 kelompok berdasarkan HTTP verb yaitu :<\/p>\n<ol>\n<li>GET, dalam penggunaannya method untuk kelompok HTTP verb ini adalah untuk mengambil atau membaca data.&#160; Method pada kelompok ini biasanya mengembalikan suatu keluaran\/output yang kadang bisa disebut sebagai <strong>function<\/strong>.<\/li>\n<li>POST, dalam penggunaannya method untuk kelompok HTTP verb ini adalah untuk membuat (create) item\/resource baru.&#160; Kelompok method ini biasanya tidak mengembalikan keluaran\/output yang kadang disebut <strong>procedure<\/strong>.<\/li>\n<li>PUT, dalam penggunaannya method untuk kelompok HTTP verb ini adalah untuk mengupdate item\/resource yang telah ada. (idem dengan point 2).<\/li>\n<li>DELETE, dalam penggunaannya method untuk kelompok HTTP verb ini adalah untuk menghapus item\/resource yang telah ada. (idem dengan point 2).<\/li>\n<\/ol>\n<p>Pada posting berikutnya akan diterangkan contoh Web API untuk proses CRUD pada database.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pada kode Web API yang telah dilihat pada posting-posting sebelumnya akan kita lihat seperti berikut ini : using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Net.Http;using System.Web.Http;namespace ASPNET.WebForm.WebApp.Controllers{ public class ValuesController : ApiController { \/\/ GET api\/&lt;controller&gt; public IEnumerable&lt;string&gt; Get() { return new&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[6],"tags":[68,96,108],"class_list":["post-1138","post","type-post","status-publish","format-standard","hentry","category-softwaredev","tag-asp-net","tag-vs-2013","tag-web-api"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p1sNAL-im","_links":{"self":[{"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=\/wp\/v2\/posts\/1138","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1138"}],"version-history":[{"count":0,"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=\/wp\/v2\/posts\/1138\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1138"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1138"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rezafaisal.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1138"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}