Web Service Chapter 3


มาตรฐานของ web service

         จากที่เราได้แนะนำข้อมูลเบื่องต้นไปส่วนใหญ่จะให้เห็นเป็นภาพรวมก่อนนะครับ (ในมุมมองของผม การสร้างหรือการทำ web service นั้นแค่คลิกขวา แล้วก็ให้มันเจน เป็น web service ง่ายมั้ยหล่ะครับ ^^ เพราะฉนั้นเราอย่ามองว่ามันเป็นเรื่องยากจนเกินตัวนะครับ)

         ในเนื้อหานี้ผมจะให้เห็นมาตรฐานของ web service หลัก ๆ ทั้งหมดเลยนะครับเพื่อให้รู้ว่าจะให้มันเป็น web service นี้นั้นมันจะต้องมีอะไรบ้าง

 

       มาตรฐานหลักของเวปเซอร์วิส

          ในการเรียนรู้เกี่ยวกับ Web Service นั้นจะต้องรู้จักภาษา XML ก่อนถึงทำงานกับ Web Service ได้ ภาษา XML นั้นเป็นภาษาที่เป็นมาตรฐานกลาง คือทุก ๆ ภาษาจะมี XML ซึ่ง XML ของแต่ละภาษานี้จะมีลักษณะที่เหมือนกันองค์ประกอบต่าง ๆ จะเหมือนกัน แต่อาจจะแตกต่างบ้างเล็กน้อยในส่วนย่อย ๆ  ที่ไม่สำคัญ ดังนั้นการที่ภาษาต่าง ๆ  จะติดต่อกันได้ก็จะต้องติดต่อกันผ่าน XML นั่นเอง          เมื่อเรารู้แล้วว่า XML คืออะไร ก็จะมาดูรายละเอียดว่าเมื่อเราจะนำภาษา XML ไปทำเป็น Web Service นั้นเราจะต้องรู้จักกับอะไรบ้าง 

           XML Schema (โครงสร้างของ XML)

            การที่เราจะสร้างระบบที่ต้องใช้ XML ในการติดต่อข้อมูลหากันนั้น จะต้องมีสิ่งหนึ่งที่จะเป็นตัวบ่งบอกว่า ในแต่ส่วนหรือชื่อที่เรานำไปใช้เขียนใน XML Tag นั้นคืออะไรมีส่วนเกี่ยวข้องกับส่วนใดเราจำเป็นจะต้องมีส่วนที่อธิบายตรงนี้ด้วย สิ่งที่อธิบายนั่นก็คือ XML Schema นั่นเองเพราะฉะนั้นเราจะต้องมี XML Schema ทุกครั้งเมื่อเราทำการเขียนโปรแกรม 

          XML Namespace (กลุ่มของชื่อที่เป็นลักษณะเฉพาะ)

            จะเป็นส่วนที่อธิบายต่อจาก XML Schema เพราะจะบ่งบอกว่า Tag นี้คืออะไร เช่นมี Tag <t:name= “xx” ….>…..</t:name> ถ้าเราไม่ทราบ Schema เราก็จะไม่รู้ว่า name คืออะไรเพราะฉะนั้นกลุ่มของชื่อที่เราได้อธิบายใน Schema นั้นจะเป็นตัวบอกว่าในเอกสาร XML ที่เราได้สร้างมานั้นมีลักษณะเฉพาะอะไรบ้างหรือชื่อเฉพาะอะไรบ้างนั่นเอง 

WSDL (Web Services Description Language)

         wsdl

รูปแสดงลักษณะของเอกสาร WSDL          

           เป็นเอกสารที่อธิบายว่าระบบบริการนี้  ทำอะไรได้มีมีส่วนประกอบอะไรบ้าง  จะต้องส่งข้อมูลอะไรไปบ้างและจะได้ข้อมูลอะไรกลับมา โดยจะอธิบายแบบคร่าว ๆ  และจะบอก URL ของแหล่งเก็บข้อมูลหรือแหล่งที่ทำการประมวลผลของบริการ เพื่อทำการแลกเปลี่ยนข้อมูลถึงกัน 

 

UDDI (Universal Description, Discovery, and Integration)

                           uddi

          ทำหน้าที่เป็นไดเร็กทอรี่ของบริการ โดยรับลงทะเบียนบริการต่าง ๆ  ที่ผู้ให้บริการมาประกาศไว้สำหรับให้ผู้ใช้บริการทำการสอบถามได้ในภายหลัง UDDI กำหนดรูปแบบในการประกาศข้อมูลเกี่ยวกับผู้ให้บริการและบริการ และกำหนด API สำหรับการประกาศและสอบถามข้อมูลดังกล่าว ผู้ให้บริการสามารถประกาศรายละเอียดเกี่ยวกับหน่วยงานของตน และให้รายละเอียดเกี่ยวกับบริการที่เปิดให้บริการ โดยระบุรายละเอียดเกี่ยวกับการติดต่อซึ่งมีข้อมูล URLสำหรับใช้ในการเรียกใช้บริการ และมีข้อมูลอ้างอิงไปยัง WSDL ของบริการ            ข้อมูลใน UDDI จะประกอบไปด้วยรายละเอียดเกี่ยวกับองค์กร (business Entity) รายละเอียดเกี่ยวกับเซอร์วิส (business Service) รายละเอียดเกี่ยวกับการติดต่อ (binding Template) URL สำหรับการเรียกใช้เซอร์วิส (access Point) และข้อมูลอ้างอิงไปยัง WSDL (tModelInstanceInfo) มาตรฐาน UDDI ล่าสุดเป็น เวอร์ชัน 3.0           

SOAP Web Service Standard         

           SOAP เป็นโปรโตคอลที่กำหนดรูปแบบข้อมูล XML สำหรับการส่งข้อความระหว่างผู้ร้องขอข้อมูลกับผู้ให้บริการ เพื่อเป็นการแลกเปลี่ยนระหว่างข้อความที่ผู้ร้องขอส่งให้กับผู้ให้บริการ แล้วผู้ให้บริการก็ส่งข้อมูลที่เป็นผลลัพธ์ให้กับผู้ร้องขอ ส่วนการส่งข้อมูลนั้นสามารถส่งได้สองทางนั่นก็คือ โปรโตคอล HTTP กับ โปรโตคอล Web Service          การส่งข้อความ SOAP มีสองรูปแบบคือ SOAP-RPC และ SOAP message โดย SOAP-RPC ใช้ในการส่งข้อความเพื่อใช้เรียกเมธอดหรือ Procedure ซึ่งโดยมากจะเป็นรูปแบบ Synchronous โดย SOAP จะส่ง SOAP Request ส่วน SOAP-message ใช้ในการส่งข่าวสารหรือข้อมูลในรูปแบบ XML ระหว่างผู้ให้บริการและผู้ใช้บริการ โดยสามารถส่งได้ทั้งแบบ Synchronous และ Asynchronous

โครงสร้างของ SOAP มีดังนี้

-          ส่วน SOAP Envelope : ใช้ในการอธิบายข่าวสาร ระบุเนื้อหา และกระบวนการจัดการข้อมูล

-          ส่วน SOAP Transport : ใช้ในการอธิบายโพรโทคอลเกี่ยวกับการส่งข้อมูลเช่น HTTP หรือ SMTP

-          SOAP Encoding : ใช้ในการอธิบายการเข้ารหัสเพื่อจับคู่ชนิดข้อมูล (data type) ที่ใช้ในโปรแกรมประยุกต์ XML element

              ทั้งหมดนี้เป็นมาตรฐานหลักของ web service ผมจะสรุปให้สั้น ๆ เลยนะครับ นั่นก็คือ ในการที่เราจะหาบริการ(service) ซักหนึ่งบริการนั้น เราจะต้องไปหาที่ uddi ที่เป็นเหมือนสมุดหน้าเหลืองเพื่อใช้ค้นหา บริการที่เราต้องการ เมื่อเจอแล้ว uddi ก็จะส่ง wsdl ไฟล์กลับมาให้เรา เพื่อให้เราได้เห็นหน้าตาว่าเราจะต้องส่งข้อมูลอะไรไปให้บริการนี้บ้าง และที่อยู่ของบริการเพื่อให้เราเรียกใช้งาน เมื่อเราได้ที่อยู่แล้วเราก็จะส่งข้อความไปเพื่อร้องขอข้อมูลที่เราต้องการ(หรืออีกนัยหนึ่งก็คือ เพื่อให้ได้ข้อมูลที่บริการนั้นสามารถส่งกลับมาได้) โดยการส่งข้อความนี้จะผ่านโปรโตคอลชื่อ SOAP ใช้ในการรับ parameter และ ส่งผลลัพธ์กลับมาให้กับผู้ร้องขอข้อมูล ก็เป็นการจบกระบวนการทำงานของ 1 รอบของการร้องขอข้อมูล 1 ครั้ง

หมายเลขบันทึก: 159808เขียนเมื่อ 17 มกราคม 2008 15:38 น. ()แก้ไขเมื่อ 6 กันยายน 2013 18:42 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (0)

ไม่มีความเห็น

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท