تولید خوراک خوان برای سایت یا RSS
ارسال شده توسط مدیر وبلاگ:علی در 91/7/10:: 9:40 صبحمورد استفاده خوراکها بیشتر در مورد سایتهای خبری صدق میکند. برای نمونه شما میخواهید تمامی مطالب سایت را تیتروار بخوانید. در این صورت بدون خوراکها شما مجبور به مرور کل محتوای سایت هستید که این کار قدری زمانبر و خستهکننده است، زیرا برای دیدن خبرهای جدید باید کل سایت را مشاهده کنید. البته دیدن کل سایت یک مشکل دیگر هم دارد. فرض کنید یک سایت خبری در مورد بازار سهام اخبار منتشر میکند و شما مدام باید این اخبار را دنبال کنید، آیا منطقی است همیشه صفحه وبسایت باز باشد و آخرین اخبار را با Refreshکردن صفحه مطالعه کنید؟
این کار ممکن است راحت باشد، ولی به مرور خستهکننده خواهد بود. اما راهحل این است که به نحوی ساده از این اخبار مطلع شوید. برای این کار یک برنامه ساده روی دستگاه موبایل یا رایانه شخصی شما میتواند شما را از آخرین اخبار مطلع کرده و به شما اطلاعرسانی کند. این برنامهها برای اینکه براحتی اجرا شود نیاز به یک RSS Feed دارد که خوراک آنها را تامین کند و مدام در حال چککردن لینک خبری باشد و بهروزرسانیها را به شما نمایش دهد. شما میتوانید بسادگی این برنامهها را در اینترنت پیدا کنید. نمونه معروف و آنلاین آن سایت reader.google.com است که به شما این امکان را میدهد تا لینکهای RSS خود را به آن بدهید و این سایت به عنوان یک خواننده خوراک یا RSS Reader عمل کند.
اما با پیشرفت فناوری و استفاده از AJAX خیلی از سایتها امکان بهروزرسانی درجا را به شما میدهد و شما میتوانید بدون Refreshکردن سایت مطالب آن را بخوانید. مثلا سایت المپیک که باید اخبار لحظهای را به روز کند یا سایتهایی مثل Twitter و FriendFeed از این فناوری استفاده میکند.
اما این خوراکها چگونه تولید میشود؟
روشهای مختلفی برای تولید خوراک برای یک سایت وجود دارد که با توجه به زبانهای برنامهنویسی و چارچوبهای کاری که میخواهید از آنها استفاده کنید، فرق میکند. برای مثال در دات نت امکان تولید RSS و Atom با استفاده WCF وجود دارد و شما میتوانید از آن استفاده کنید. قبل از هر چیز باید با ساختار RSS آشنا شوید. به ساختار زیر دقت کنید:
«?xml version="1.0" encoding="UTF-8" ?»
«rss version="2.0"»
«channel»
«title»RSS Title«/title»
«description»This is an example of an RSS feed«/description»
«link»http://www.someexamplerssdomain.com/main.html«/link»
«lastBuildDate»Mon, 06 Sep 2010 00:01:00 +0000 «/lastBuildDate»
«pubDate»Mon, 06 Sep 2009 16:45:00 +0000 «/pubDate»
«item»
«title»Example entry«/title»
«description»Here is some text containing an interesting description.«/description»
«link»http://www.wikipedia.org/«/link»
«guid»unique string per item«/guid»
«pubDate»Mon, 06 Sep 2009 16:45:00 +0000 «/pubDate»
«/item»
«/channel»
«/rss»
در قسمت Channel ابتدا مشخصات RSS یک سایت را معلوم میکنید؛ مانند اینکه این RSS برای چه سایتی است و اطلاعات آن در چه تاریخی منتشر شده، اولین خبر مربوط به چه تاریخی است، توضیحات اضافه در مورد سایت، سپس بخش اصلی که item است. در این قسمت اطلاعاتی در مورد هر خبر مانند عنوان، توضیحات، لینک مربوط به خبر، رشته منحصر به فرد برای هر item و تاریخ انتشار آن مشخص میشود. در ساختار بالا که در قالب xml است مقدار item به صورت یک ارائه در اختیار است، سپس با مرور این ارائه میتوانیم به خبرها دسترسی داشته باشیم.
به عبارتی سادهتر میتوانید این ساختار را به صورت یک رشته متنی در نظر بگیرید و آن را در برنامه خود تولید و برای هر خبر یک item ایجاد کنید. سپس آن را به بخش Channel اضافه کنید.