با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، با یکی دیگر از جلسات دوره کامل آموزش JavaScript در خدمت شما دوستان هستیم . در این جلسه به آموزش شی XMLHttpRequest و خواص شی XMLHttpRequest از بخش اشیا در جاوا اسکریپت می پردازیم تا پایان این جلسه با ما همراه باشید.
شالوده یا شاه کلید Ajax شی XMLHttpRequest می باشد. تمام مرورگر های مدرن از این شی پشتیبانی می کنند.
XHR می تواند برای تباد داده بایک وب سرور در پشت صحنه استفاده شود.
این بدین معنی است که می توان بخشی از کد را بدون بارگذاری کل صفحه بروز کرد.
برای ایجاد این شی به صورت زیر عمل می کنیم::
در مرور گر های قدیمی مانند IE5/6 از دستور زیر استفاده کنید:
1 | variable = new ActiveXObject("Microsoft.XMLHTTP"); |
می توانید از کد زیر برای پشتیبانی شی XHR بر روی تمام مرورگر ها استفاده کنید:
1 2 3 4 5 6 7 | if (window.XMLHttpRequest) { // code for modern browsers xmlhttp = new XMLHttpRequest(); } else { // code for old IE browsers xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } |
به دلایل امنیتی، مرورگر های مدرن اجازه دسترسی به دامنه های سراسری را نمی دهند.
این یعنی صفحه وب و فایل XML باید بر روی یک سرور قرار بگیرند.
تمام مثال های PVLearn فایل های xml ای را باز می کنند که روی دامنه PVLearn قرار دارد.
اگر شما هم میخواهید تا مثال ها را روی صفحه وب خودتان اجرا کنید، فایل های xml باید بر روی سرور خودتان قرار بگیرد.
توضیحات | متد |
یک شی جدید ایجاد می کند | ()new XMLHttpRequest |
درخواست جاری را لغو می کند | ()abort |
هدر اطلاعات را بر می گرداند | ()getAllResponseHeaders |
هدر خاصی از اطلاعات را بر می گرداند | ()getResponseHeader |
درخواست را مشخص می کند method: نوع درخواست. GET یا POST async: اگر true باشد به معنای asynchronous و اگر false باشد به معنای synchronous می باشد | open(method, url, async, user, psw) |
برای ارسال درخواست به سرور از طریق GET | ()send |
برای ارسال درخواست به سرور از طریق POST | send(string) |
یک جفت برچسب/مقدار را به هدر برای ارسال اضافه می کند | ()setReqquestHeader |
توضیحات | Property |
یک تابع را برای فراخوانی هنگام تغییر خاصیت readyState تعریف می کند | onreadystatechange |
وضعیت XHR را نگه می دارد ۰: درخواست مقدار دهی اولیه نشده است ۱: ارتباط با سرور پایه ریزی شد ۲:درخواست دریافت شد ۳:پردازش درخواست ۴:درخواست به پایان رسید و آماده است | readyState |
داده های پاسخ را در قالب رشته بر می گرداند | responseText |
داده های پاسخ را در قالب XML بر می گرداند | responseXML |
وضعیت درخواست را بر می گرداند ۲۰۰: “OK” ۴۰۳: “Forbidden” ۴۰۴: “Not Found” | status |
متن وضعیت را بر می گرداند | statusText |
جلسه آموزش شی XMLHttpRequest نیز به پایان رسید.
در جلسه بعد به آموزش ارسال درخواست به سرور در Ajax خواهیم پرداخت. با ما همراه باشید
محمد
ممنون از مقاله ی خوبتون
اینجاهایی که به عرض میرسونم در جدول اشتباه تایپی هست ..ملاحظه بفرمایید در متنتون
نوشتن treu
برچشب رو نوشتین برپسب
اسن اشتباهه اصلا درسته
پی وی لرن
با تشکر از شما، موارد گفته شده اصلاح شده.
mrv
slm sitetoon kheili jame va khoobe hata doreye amoozesh java script site x daghighan copy az shomast
Khan
Ajax در همه موارد یکی هست و شباهت زیادی بین آموزش ها هستش پس خواهش می کنم به سایت x توهین نکنید.
طاها
سلام
ممنون از سایت خوبتون.
یه سوال:
فرق asynchronous با synchronous در متد open چیه؟یعنی کجا از سنکرون و کجا از آسنکرون استفاده میشه؟