نمایش اسناد XML و کار با HttpRequest در XML

HttpRequest in XML

0 119

در قسمت پنجم سری آموزشی XML به طریقه نمایش فایل های XML و همچنین کار با HttpRequest در XML می پردازیم

فایل XML خام را می توان در همه مرورگرهای مهم مشاهده کرد. اما انتظار نداشته باشید که فایل های XML را مانند محتویات صفحات HTML مشاهده کنید.

نمایش فایل های XML

XML

تصویر بالا را مشاهده کنید. این تصویر نمایش یک فایل XML را در مرورگر نشان می دهد.

اکثر مرورگرها اسناد XML را به صورت عناصر رنگی نشان می دهند (مثل تصویر بالا). اغلب نیز یک علامت جمع (+) یا منها (-) در سمت چپ عناصر وجود دارد که قابل کلیک شدن است و می توان از آن برای جمع کردن یا نشان دادن و گسترش دادن ساختار و محتویات یک عنصر استفاده کرد.

جهت مشاهده سورس کد فایل XML گزینه “View Page Source” یا “View Source” را از منوی مرورگر خود انتخاب کنید.

نکته: در مرورگر safari 5 (و نسخه های قبل تر) تنها متن عنصر نشان داده می شد. جهت نمایش فایل XML خام در آن ها، شما می بایست روی صفحه کلیک راست کنید و گزینه “View Source” را انتخاب نمایید.

نمایش یک فایل نامعتبر XML

اگر یک فایل خطا دار و نامعتبر XML را باز کنید، در بعضی مروگرها مشاهده می کنید که خطا گزارش می شود و البته بعضی دیگر فایل مورد نظر را نشان می دهند یا آن را به صورت غلط نمایش می دهند. برای مثال فایل زیر در نظر بگیرید:

xml

خطایی که هنگام نمایش فایل بالا با آن رو به رو می شوید به صورت زیر است:

xml

مثال هایی دیگر از نمایش XML

در ادامه مثالی از نمایش چند فایل را آورده ایم که به شما کمک می کنند موضوع نمایش فایل های XML را بهتر درک کنید:

مثال اول: منوی صبحانه یک رستوران را نشان می دهد که به صورت XML ذخیره شده است:

در ادامه مثال دیگری را می بینیم: نمایش زیر اطلاعات موجود در یک CD را نشان می دهد، که به صورت XML ذخیره شده اند:

و همچنین مثال بعد که کاتالوگ مربوط به گیاهان از یک فروشگاه را نشان می دهد که به صورت XML دخیره شده است:

چرا فایل های XML به این شکل نمایش داده می شوند؟

فایل ها یا اسناد XML اطلاعاتی اطلاعاتی راجع به نحوه نمایش دیتا ارائه نمی کنند. وقتی تگ های XML توسط توسعه دهنده آن ایجاد می شوند، مرورگرها نمی دانند که تگی مثل <table> همان تگ <table> در HTML است یا این که نشان دهنده معنی «میز ناهارخوری» می باشد.  فایل ها بدون هرگونه اطلاعاتی درباره این که دیتا چطور نمایش داده می شود، دیتاها را ارائه می کنند. مرورگرها تنها کاری که می توانند در این رابطه انجام دهند، این است که فقط دیتای XML را نشان دهند و این نمایش به همان صورتی است که در فایل XML موجود است.

نکته: اگر می خواهید که به اسناد XML خود استایل بدهید، از XSLT استفاده کنید که ما آن را در بخش های بعدی بررسی می کنیم.

کار با HttpRequest در XML

همه مرورگرهای مدرن، یک شی یا آبجکت XMLHttpRequest به صورت پیش فرض با خود دارند که جهت درخواست دیتا از یک سرور، با آن کار می کنند.

شی HttpRequest در XML

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

شی XMLHttpRequest رویای برنامه نویس ها محسوب می شود، به این خاطر که شما می توانید با استفاده از آن:

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

مثالی از XMLHttpRequest

تصویر زیر را مشاهده کنید. این یک مثال از کاربرد XMLHttpRequest است. ما در کادر ورودی در تصویر زیر کاراکتر یا حرف s را تایپ کردیم و بنابر دیتایی که به سرور فرستاده می شود نتایجی را بر می گرداند که بر همین اساس suggestion یا پیشنهاداتی ارائه می گردد:

HttpRequest در XML

در واقع فرآیند بالا همان فناوری Ajax است. زیرا در Ajax با این شی کار می کنیم.

ارسال یک XMLHttpRequest

سینتکس متداول جاوا اسکریپت جهت استفاده از شی XMLHttpRequest به صورت کد مثال زیر است. پس از آن شرح مثال را مشاهده کنید:

شرح مثال بالا

خط اول در کد مثال بالا، یک شی XMLHttpRequest پدید می آورد:

صفت onreadystatechange از شی xhttp یک تابعی را تعریف می کند تا با تغییر وضعیت شی XMLHttpRequest اجرا گردد:

زمانی که مقدار صفت readyState برابر 4 و مقدار صفت status برابر 200 باشد، پاسخ سرور آماده است و به آن دسترسی داریم:

صفت responseText پاسخ سرور را به صورت یک رشته متنی بر می گرداند. از این رشته متنی می توان جهت به روزرسانی یک صفحه وب استفاده کرد. در مثال بالا می گوییم مقدار رشته متنی بازگشتی از سرور را در عنصری از صفحه قرار بده که مقدار id ای آن عنصر برابر “demo” است:

نسخه های قدیمی IE5 and IE6) Internet Explorer)

نسخه های قدیمی Internet Explorer (برای مثال IE5 , IE6) شی XMLHttpRequest را پشتیبانی نمی کنند. جهت مدیریت IE5 و IE6، بررسی کنید که مرورگر از شی XMLHttpRequest پشتیبانی می کند یا خیر و اگر پشتیبانی نمی کند، یک ActiveXObject بسازید:

ترتیبی که روکسو برای یادگیری مطالب سری آموزش XML به شما توصیه می‌کند:

ارسال نظر

توجه:‌ آدرس ایمیل شما منتشر نخواهد شد.

mezitli escort
mezitli escort