تفاوت بین متد های http و web API

تفاوت بین متد های http و web API

بسم الله الرحمن الرحیم

 

آموزش Web API

اگر خیلی ساده بخواهیم این موضوع را بررسی کنیم باید بگوییم که متدهای http برای این منظور طراحی شده اند که پاسخ یک درخواست کاربر را در قالب استاندارد صفحات html پاسخ دهند اما در web api شما به طراحی یک وب سرویس می پردازید که این وب سرویس فارغ از نوع کاربر و سیستم آن می تواند فراخوانی شود و اطلاعات لازم را دریافت و پردازش کند و نتیجه را در یک قالب برای فرستنده ارسال کند.

سوال شما از جنبه ای بسیار صیح است زیرا مایکروسافت در حال هدایت تکنولوژی خود به سمت وب سرویس می باشد به گونه ای که شما تمامی متد های خود را به شکل وب سرویس یا همان web api طراحی کنید و این در آخرین نسخه ی وب مایکروسافت با نام vNext قابل مشاهده است. از سوی دیگر نیز همین سادگی و شباهت بسیار زیاد Action های یک کنترلر ساده با متدهای web api بیانگر همین مطلب است که مایکروسافت قصد دارد مشکلات و پیچیدگی های طراحی وب سرویس را حذف کند تا نوشتن وب سرویس بسیار ساده باشد.

 

بسم الله الرحمن الرحیم

آموزش Web API

اگر خیلی ساده بخواهیم این موضوع را بررسی کنیم باید بگوییم که متدهای http برای این منظور طراحی شده اند که پاسخ یک درخواست کاربر را در قالب استاندارد صفحات html پاسخ دهند اما در web api شما به طراحی یک وب سرویس می پردازید که این وب سرویس فارغ از نوع کاربر و سیستم آن می تواند فراخوانی شود و اطلاعات لازم را دریافت و پردازش کند و نتیجه را در یک قالب برای فرستنده ارسال کند.

سوال شما از جنبه ای بسیار صیح است زیرا مایکروسافت در حال هدایت تکنولوژی خود به سمت وب سرویس می باشد به گونه ای که شما تمامی متد های خود را به شکل وب سرویس یا همان web api طراحی کنید و این در آخرین نسخه ی وب مایکروسافت با نام vNext قابل مشاهده است. از سوی دیگر نیز همین سادگی و شباهت بسیار زیاد Action های یک کنترلر ساده با متدهای web api بیانگر همین مطلب است که مایکروسافت قصد دارد مشکلات و پیچیدگی های طراحی وب سرویس را حذف کند تا نوشتن وب سرویس بسیار ساده باشد.

 

انوع متدها در  web API

در web api چهار متد اصلی وجود دارد که می توان آنها را به صورت زیر معرفی کرد

C - Create - POST 
R - Read - GET 
U - Update - PUT 
D - Delete - DELETE

سوالی که مطرح شده است تفاوت بین PUT و POST است.

تفاوت بین PUT و POST 

 

POST 

با ذکر یک مثال این مطلب را بیان می کنیم اگر قرار باشد یک مطلب جدید ایجاد کنید آدرس شما به صورت زیر باشد

 


POST /questions/questions125 HTTP/1.1
Host: www.example.com/

چون resource ایی برای این موضوع وجود ندارد خطای زیر اتفاق خواهد افتاد.

 


resource not found

برای همین منظور شما باید از دستور Post در زمان هایی استفاده کنید که resource مورد نظر شما قبلا ایجاد شده است.

 

PUT 

طبق مثال بالا اگر قرار باشد شما دستور زیر را اجرا کنید، خطایی دریافت نخواهید کرد.

 


PUT /questions/questions125 HTTP/1.1
Host: www.Ably.ir/

 

در تهایت اگر خواستید دستوری را اجرا کنید که URL مربوط به آن قبلا ایجاد نشده است باید از دستور PUT استفاده کنید و در صورتی که URL و آدرس Resource شما وجود داشت می توانید از دستور Post برای بروز رسانی آن استفاده کنید.

 

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس