سرور (XML Server)
اینجا می بینی «سرور XML» چطور کار می کند. فایل XML متن ساده است. بنابراین، سرور به راحتی آن را ذخیره یا تولید می کند. مثل دفتر مدرسه که اسم ها را نگه می دارد.
ذخیره XML روی سرور
XML دقیقاً مثل HTML ذخیره می شود. یک فایل بساز و آپلود کن. سپس با آدرس مستقیم سرویس بده.
<?xml version="1.0" encoding="UTF-8"?>
<note>
<from>Jani</from>
<to>Tove</to>
<message>Remember me this weekend</message>
</note>
نکته: «متن ساده (Plain Text)» یعنی بدون فرمت ویژه. هر ویرایشگری بازش می کند.
تولید XML با PHP روی سرور
می توانی پاسخ XML بسازی. فقط هدر درست بفرست و متن XML چاپ کن.
<?php
header("Content-type: text/xml");
echo "<?xml version='1.0' encoding='UTF-8'?>";
echo "<note>";
echo "<from>Jani</from>";
echo "<to>Tove</to>";
echo "<message>Remember me this weekend</message>";
echo "</note>";
?>
نکته: «Content-Type» به مرورگر می گوید نوع داده چیست.
تولید XML با ASP کلاسیک
در ASP هم مشابه است. نوع محتوا را xml بگذار و گره ها را بنویس.
<%
response.ContentType="text/xml"
response.Write("<?xml version='1.0' encoding='UTF-8'?>")
response.Write("<note>")
response.Write("<from>Jani</from>")
response.Write("<to>Tove</to>")
response.Write("<message>Remember me this weekend</message>")
response.Write("</note>")
%>
تولید XML از پایگاه داده
می توانی رکوردها را بخوانی و تبدیل به XML کنی. این کار برای API ساده است.
<%
response.ContentType = "text/xml"
set conn=Server.CreateObject("ADODB.Connection")
conn.provider="Microsoft.Jet.OLEDB.4.0;"
conn.open server.mappath("/datafolder/database.mdb")
sql="select fname,lname from tblGuestBook"
set rs=Conn.Execute(sql)
response.write("<?xml version='1.0' encoding='UTF-8'?>")
response.write("<guestbook>")
while (not rs.EOF)
response.write("<guest>")
response.write("<fname>" & rs("fname") & "</fname>")
response.write("<lname>" & rs("lname") & "</lname>")
response.write("</guest>")
rs.MoveNext()
wend
rs.close()
conn.close()
response.write("</guestbook>")
%>
هشدار: خروجی را «ایمن» کن. داده خام را بدون ضدعفونی چاپ نکن.
تبدیل XML با XSLT روی سرور
می توانی XML را با XSLT به XHTML تبدیل کنی. سپس خروجی HTML بده.
<%
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("simple.xml"))
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("simple.xsl"))
Response.Write(xml.transformNode(xsl))
%>
برای قوانین ساخت، صفحه اسکیما XML را ببین. برای تبدیل ها نیز XSLT بسیار کاربردی است. این توضیحات درباره سرور XML بود.
گام های عملی سریع
- یک فایل XML نمونه بساز.
- سرویس PHP یا ASP را آماده کن.
- هدر صحیح بفرست و خروجی را تست کن.
- در صورت نیاز XSLT را اعمال کن.
جمع بندی سریع
- XML متن ساده است و سبک سرو می شود.
- با PHP و ASP خروجی XML بساز.
- از پایگاه داده به XML خروجی بده.
- روی سرور با XSLT تبدیل کن.