ข้อมูลเบื้องต้นเกี่ยวกับบริการ RESTful ด้วย WCF - การพัฒนาแอปพลิเคชันมือถือ บริการเว็บ สถาปัตยกรรม SOA - เทคโนโลยี
ข้ามไปที่เนื้อหา

บทนำเกี่ยวกับบริการ RESTful ด้วย WCF – การพัฒนาแอปพลิเคชันมือถือ บริการเว็บ สถาปัตยกรรม SOA

โฆษณา

ประการแรก บริการ RESTFUL เป็นไปตามรูปแบบสถาปัตยกรรมที่เรียกว่า Representational State Transfer (REST) รูปแบบสถาปัตยกรรมคือชุดของข้อจำกัดที่สามารถนำไปใช้เมื่อสร้างบางสิ่งบางอย่าง และรูปแบบสถาปัตยกรรมซอฟต์แวร์เป็นสิ่งที่อธิบายคุณลักษณะที่สามารถนำมาใช้เป็นแนวทางในการใช้งานระบบซอฟต์แวร์ได้ REST เป็นรูปแบบสถาปัตยกรรมที่สามารถใช้ในการสร้างซอฟต์แวร์ที่ไคลเอนต์ (ตัวแทนผู้ใช้) สามารถส่งคำขอบริการ (จุดสิ้นสุด) REST เป็นวิธีการนำรูปแบบสถาปัตยกรรมไคลเอนต์/เซิร์ฟเวอร์ไปใช้ ในความเป็นจริง REST ขึ้นอยู่กับรูปแบบสถาปัตยกรรมไคลเอนต์/เซิร์ฟเวอร์อย่างชัดเจน

ชายคนหนึ่งชื่อรอย โธมัส ฟีลดิงเป็นผู้บัญญัติศัพท์คำว่า REST ไว้เป็นแนวคิดในวิทยานิพนธ์ระดับปริญญาเอกของเขา (“รูปแบบสถาปัตยกรรมและการออกแบบสถาปัตยกรรมซอฟต์แวร์บนเครือข่าย”) เขาเป็นหนึ่งในคนที่ทำงานเกี่ยวกับข้อกำหนดที่ขับเคลื่อนอินเทอร์เน็ตส่วนใหญ่ในปัจจุบัน: Hypertext Transfer Protocol (HTTP) โดยปกติแล้วพื้นหลังของผู้คนที่อธิบายรูปแบบสถาปัตยกรรมไม่เกี่ยวข้องกับการอธิบายสไตล์ แต่ที่นี่ ฉันคิดว่ามัน เป็นสิ่งสำคัญเพราะฉันเชื่อว่าวิธีที่ดีที่สุดวิธีหนึ่งในการทำความเข้าใจพื้นฐานของ REST คือการคิดเกี่ยวกับเว็บและวิธีการทำงาน

WCF และส่วนที่เหลือ

WCF เป็นเฟรมเวิร์กของ Microsoft สำหรับการสร้างแอปพลิเคชันที่สื่อสารผ่านเครือข่าย โดยไม่คำนึงถึงโปรโตคอลหรือสไตล์ แนวคิดของ WCF คือการสร้างเฟรมเวิร์กที่ขยายได้และเสียบได้สำหรับการเรียนรู้ข้อมูลเกี่ยวกับโมเดลการเขียนโปรแกรมและการกำหนดค่า เพื่อให้นักพัฒนาสามารถนำความรู้นี้ไปใช้กับระบบแบบกระจายหลายประเภท

แม้ว่า WCF ส่วนใหญ่จะเป็นแบบ RPC (ใช้ SOAP) แต่ก็มีโอกาสที่จะเปิดเผยและใช้บริการ REST นับตั้งแต่เปิดตัวครั้งแรกโดยเป็นส่วนหนึ่งของ .NET Framework 3.0 ด้วยแอสเซมบลี .NET Framework 3.5 System.ServiceModel.Web โมเดลการเขียนโปรแกรมได้ถูกเพิ่มเข้ามาและยังมีโครงสร้างพื้นฐานบางส่วนที่สร้างขึ้นเพื่อทำงานกับสไตล์ REST และ .NET Framework 3.5 SP1 ได้เพิ่มการปรับปรุงเล็กๆ น้อยๆ เพื่อให้ REST ใช้งานได้ง่ายขึ้น.

โมเดลการเขียนโปรแกรมเกี่ยวข้องกับคุณลักษณะใหม่สองรายการ ได้แก่ WebGetAttribute และ WebInriggAttribute และกลไกเทมเพลต URI ที่ให้คุณประกาศ URI และกริยาที่แต่ละวิธีจะตอบสนองได้ โครงสร้างพื้นฐานถูกรวมไว้ในรูปแบบของการเชื่อมโยง (WebHttpBinding) และพฤติกรรม (WebHttpBehavior) ที่ให้สแต็กเครือข่ายที่ถูกต้องสำหรับการใช้ REST นอกจากนี้ยังมีความช่วยเหลือด้านโครงสร้างพื้นฐานโฮสติ้งบางส่วนจาก ServiceHost แบบกำหนดเอง (WebServiceHost) และ ServiceHostFactory (WebServiceHostFactory)