پارامتر اول : متد GET یا POST .

method تعیین کننده نحوه ارسال اطلاعات به سرور توسط شی XMLHttpRequest است . دو روش برای این منظور وجود دارد : GET یا POST
متد GET سریعتر و ساده تر از متد POST است . در متد GET اطلاعات ارسالی به سرور به ادامه نام فایل درخواستی ( URL ) اضافه می شوند ، اما در متد POST اطلاعات به صورت مخفی و پشت پرده به سرور منتقل می شوند .

معمولا از متد GET برای ارسال اطلاعات استفاده می شود . اما در موارد زیر باید از متد POST استفاده کنید :

  1. هنگامی که نمی خواهید اطلاعات به صورت Cashed باشند . یعنی اطلاعات درون حافظه سرور باقی مانده و ممکن است در درخواست های بعدی از اطلاعات تکراری استفاده شود . برای مثال در عملیات update یک فایل و یا ارسال و دریافت اطلاعات از پایگاه داده از متد Post استفاده کنید .
  2. حجم اطلاعات ارسالی زیاد باشد . متد GET در حجم اطلاعات ارسالی بسیار محدود بوده و در حجم های اطلاعات بالا باید از متد POST استفاده نمایید .
  3. هنگامی که می خواهید اطلاعات حساسی مثل رمز عبور را منتقل کنید ، باید از متد POST استفاده شود . زیرا در متد GET اطلاعات ارسالی به انتهای نام فایل درخواست شده اضافه شده و به همین دلیل قابل رویت هستند . اما در متد POST اطلاعات به صورت مخفی و پشت پرده منتقل می شوند .

۱٫ مثال ارسال درخواست با متد GET :

 مثال ۱
ارسال با متد GET
 xmlhttp.open( “GET” , “ajax_info.txt” , true ) ;
xmlhttp.send( );

۲٫ مثال ارسال درخواست به سرور با متد GET و فرستادن اطلاعات مورد نظر با اضافه کردن چند مقدار به ادامه نام فایل درخواستی :

 مثال ۲
ارسال اطلاعات با متد GET
 xmlhttp.open( “GET” , “demo_get2.asp?Name=Omid&Family=Rezaee” , true) ;
xmlhttp.send( );

 

۳٫ مثال ارسال درخواست به سرور با متد POST :

 مثال ۳
ارسال درخواست با متد POST
 xmlhttp.open( “POST” , “demo_post.asp” , true ) ;
xmlhttp.send( );

 

۴٫ مثال ارسال درخواست به سرور با متد POST و انتقال اطلاعات مورد نظر با آن:

اگر هنگام استفاده از متد POST بخواهید ، اطلاعات مورد نظرتان را نیز ارسال کنید ، باید یک HTTP header را به وسیله متد( ) setRequestHeader  به متد خود اضافه کنید . سپس اطلاعات مورد نظر را با متد ( ) send به سرور ارسال کنید . کد زیر روش این کار را نمایش می دهد:

 مثال ۴
ارسال درخواست و اطلاعات با متد POST
 xmlhttp.open( “POST” , “ajax_test.asp” , true ) ;
xmlhttp.setRequestHeader( “Content-type” , “application/x-www-form-urlencoded” ) ;
xmlhttp.send( “Name=Omid&Family=Rezaee” ) ;

پارامتر دوم url : آدرس یک فایل بر روی سرور .

پارامتر url در متد ( ) open ، در هنگام ارسال درخواست Ajax به سرور ، آدرس یک فایل بر روی سرور را تعیین می کند .
سرور در هنگام دریافت درخواست XMLHttpRequest ، فایلی که آدرس آن را با پارامتر url تعیین کرده اید ، باز کرده و بسته به نوع آن ، آن را پرادزش می کند . این فایل می تواند هر نوع فایلی باشد مثلا یک فایل ساده متنی باشد که حاوی مقداری اطلاعات است . همچنین می تواند یک فایل اسکریپتی مثل java script ، ASP.Net و یا PHP باشد ، که کدهای خاصی را اجرا می کند .

سرور پس از اجرای دستورات موجود در فایل مقصد ، پاسخ لازم را تولید کرده و به کامپیوتر کاربر ارسال می کند . در قسمت بعدی به آموزش نحوه دریافت این پاسخ خواهیم پرداخت .

۵٫ در مثال زیر به تعیین آدرس یک فایل برای پارامتر url پرداخته ایم .

مثال ۵
تعیین فایل مقصد با استفاده از خاصیت u
xmlhttp.open( “POST” , “demo_post.asp” , true ) ;
xmlhttp.send( )