منوی ویژه: کیک شکلاتی ASP.NET با نسکافه داغ (قسمت پنجم)
نقش HTTP / بخش اول
نوشته آراد حقی • 30 بهمن 1390
HTTP یک پروتکل ارتباطی مبتنی بر نوشته (Text) است که از آن برای درخواست صفحات وب از یک وب سرور و ارسال پاسخ به مرورگر وب استفاده می شود. در قسمت های پیشین سری مقالات "منوی ویژه: کیک شکلاتی ASP.NET با نسکافه داغ" به بررسی نقش مرورگر وب و وب سرور پرداختیم. در این قسمت قصد داریم نقش HTTP را به عنوان یک پروتکل ارتباطی میان وب سرور و مرورگر وب مورد بررسی قرار دهیم.

همانگونه که در مقالات پیشین اشاره شد، هنگامیکه یک صفحه درخواست میشود، مرورگر وب درخواست خود را به وب سرور ارائه میدهد. درخواست در سادهترین حالت ممکن است چیزی شبیه عبارت زیر باشد:
GET /default.aspx HTTP/1.1
Host: www.microsoft.com
اولین کلمه درخواست فوق دستور (Command) است که به عنوان متد (Method) نیز شناخته میشود. بهدنبال دستور، Uniform Resource Identifier و یا همان URI منبع درخواستی میآید. در مورد مثال فوق، منبع درخواستی /Default.aspx است. در ادامه URI نسخه HTTP مورد استفاده برای پردازش درخواست ذکر میشود که در مثال فوق نسخه HTTP مورد اشاره HTTP/1.1 است. خط دوم درخواست (Host: www.microsoft.com) مشخص کننده نام وب سایت درخواست شده است. بیشتر وب سرورها، چندین وب سایت را با یک آدرس IP میزبانی میکنند و به همین دلیل نیاز دارند با دریافت نام وب سایت، صفحه صحیح و مورد درخواست را باز گردانند.
HTTP دستورات مختلفی را پشتیبانی مینماید. در ادامه لیستی از متداول ترین و مهمترین دستورات HTTP ارائه شده است.
|
متد HTTP |
توضیحات |
|
GET |
با استفاده از این دستور می توانید یک آبجکت مانند صفحه وب را از سرور
درخواست نمایید. یک درخواست GET برای یک Uniform Resource
Locator و یا به اختصار URL مشخص، آن منبع را باز می
گرداند. به عنوان مثال GET /test.htm ، منبع test.htm که یک صفحه استاتیک است را باز میگرداند. |
|
POST |
با استفاده از این دستور میتوانید داده ها را برای پردازش به سرور ارسال
نمایید. این دستور معمولا زمانی مورد استفاده قرار میگیرد که کاربر دادهها را
در یک فرم HTML وارد مینماید و آنها را به
عنوان قسمتی از درخواست خود ارسال مینماید. این دستور هنگامیکه خارج از محدوده
HTML مورد استفاده قرار میگیرد
کاربردهای دیگری نیز دارد که در آینده به آن خواهیم پرداخت. |
|
HEAD |
با استفاده از این دستور میتوانید Meta Data های مرتبط با یک آبجکت را بدون بارگزاری خود صفحه دریافت
نمایید. از HEAD معمولا برای تایید عدم تغییر یک
منبع نسبت به زمانی که توسط مرورگر Cache شده است، نیز استفاده میشود. |
|
OPTIONS |
با استفاده از این دستور میتوانید لیستی از دستوراتی که توسط سرور پشتیبانی
میشوند را بهدست آورید. با استفاده از این دستور میتوانید از پشتیبانی یک
دستور توسط سرور اطمینان حاصل نمایید و بدینوسیله از اتلاف پهنای باند سرور
جلوگیری به عمل آورید. |
|
PUT |
این دستور به شما این امکان را می دهد که به صورت مستقیم یک منبع را در URL مشخص شده ایجاد نمایید. اگر
کاربر اجازه دسترسی های لازم را داشته باشد، سرور بدنه درخواست را دریافت، فایل
را در مسیر مشخص شده ایجاد و نهایتا بدنه دریافت شده را در آن قرار میدهد. |
|
DELETE |
با استفاده از این دستور در صورتی که سطح دسترسی لازم را داشته باشید میتوانید
اقدام به حذف یک منبع از سرور نمایید. |
|
TRACE |
از این دستور برای تست و خطایابی استفاده میشود و با استفاده از این دستور
میتوانید چیزی را که در نتیجه ارسال درخواست در سمت دیگر فرآیند درخواست، دریافت
میشود را مشاهده نمایید. |
|
CONNECT |
این دستور برای استفاده با پراکسی در نظر گرفته شده است که میتواند به صورت
داینامیک آغازکننده یک تونل ارتباطی مانند آنچه با SSL روی میدهد، باشد. |
|
DEBUG |
ASP.NET Debugging را اجرا می نماید. در آینده به
صورت مفصلتری در مورد این دستور توضیحاتی را ارائه خواهیم کرد. |

mesut
مرسی از آراد عزیز، عالی بود
سید علی
مختصر و مفید :)
ولی نمی دونم چرا این مباحث اسم ASP.NET رو یدک می کشه!
آراد حقی
فرض من در نگارش این سری از مقالات این هست که خواننده هیچگونه آشنایی با برنامه نویسی وب ندارد و به همین دلیل توضیح دادن این مطالب رو ضروری می دونم البته شاید مطالب چندین قسمت اول همانطور که شما اشاره کردید مورد استفاده هر برنامه نویس تحت وب قراری بگیرد. از طرف دیگر در همین مقاله هم فرضا در توضیح دستور Debug به ASP.NET Debugger اشاره شده است و در نهایت از ترکیب این مقالات در جهت آموزش ASP.NET استفاده خواهد شد.
امیر
خیلی خوبه
این متدی که در پیش گرفتین، برنامه نویسی وب رو به شکل ساده ای برای مخاطب بیان میکنه.
البته امیدوارم زودتر به مباحث اصلی برسیم.
موفق باشی.
oMiD
خوب بود، ممنون
منم مثل امیر امیدوارم زودتر برین سر مطالب اصلی، تا بتونیم داشته هامون رو به روز کنیم.
میثم
دست شما درد نکنه. انشاالله در ادامه این مسیر ثابت قدم باشید
وحید مهدیون
با سلام ، جناب آقای حقی ، می خواستم اگه ممکنه بیشتر در مورد Put توضیح بدید . هیچ درکی ازش ندارم با تشکر