โครงสร้างพื้นฐานที่สอดคล้อง
REST API นั้นสอดคล้องและอ่านได้โดยมนุษย์ มันเป็นเอกสารด้วยตนเอง
GET wp-json/wp/v2/posts
ค่อนข้างชัดเจนว่ามันทำอะไร มันGET
เป็นข้อความบางส่วน
คุณมีเนมสเปซ: wp
, เวอร์ชัน: v2
และการรวบรวมออบเจ็กต์posts
คุณเดาได้ไหมว่า: GET wp-json/wp/v2/posts/5
ทำ วิธีการเกี่ยวกับ: GET wp-json/wp/v2/posts/5/comments
วิธีการเกี่ยวกับ:GET wp-json/shop/v2/orders/345/lines/11/price
นักพัฒนาซอฟต์แวร์สามารถคาดเดาได้อย่างง่ายดายโดยการดูว่ามันจะได้ราคาของการ11
สั่งซื้อ345
แม้จะไม่ได้อ่านเอกสารก็ตาม ผู้พัฒนาสามารถบอกได้อย่างง่ายดายว่ามาจากshop
ปลั๊กอินตามที่กำหนดเนม
วิธีการเกี่ยวกับPOST /wp-json/v2/posts title=New Blog Post
วิธีการเกี่ยวกับPUT /wp-json/v2/posts title=New Title
นั่นก็สวยใสเช่นกัน มันทำให้โพสต์ใหม่ โดยวิธีการนั้นจะส่งกลับ ID ของโพสต์ใหม่ มันไม่เกี่ยวกับ AJAX หรือ REST API AJAX เป็นเพียงเทคโนโลยีที่เข้าถึง REST API ในขณะที่ก่อนหน้านี้คุณจะต้องคิดชื่อฟังก์ชั่น ajax ที่เป็นนามธรรมเช่น:
get_price_for_lineitem( $order, $line )
. มันจะคืนค่าเป็นตัวเลขหรือวัตถุ JSON หรือไม่ ฉันไม่แน่ใจว่าเอกสารอยู่ที่ไหน โอ้ ... เป็นสายอาแจ็กซ์หรือget_order_line_price
get_lineitem_price
นักพัฒนาไม่จำเป็นต้องทำการตัดสินใจเหล่านี้เนื่องจากwp-json
api ที่มีอยู่ให้แบบจำลองพื้นฐานที่ดีที่จะปฏิบัติตามเมื่อสร้างจุดปลายของคุณเอง แน่นอนว่านักพัฒนาปลั๊กอินหรือ API สามารถทำลายกฎเหล่านี้ได้ แต่โดยทั่วไปแล้วการทำตามมาตรฐานที่ตั้งไว้แล้วจะทำได้ง่ายกว่าและนักพัฒนาส่วนใหญ่ค่อนข้างจะทำตามรูปแบบที่ได้ตั้งค่าไว้แล้ว
บทคัดย่อโดยไม่มีการรบกวน
ฉันสนใจเกี่ยวกับวิธีการPOST /wp-json/mysite/v1/widgets title=Foobar
ทำงานหรือไม่ Nope ฉันแค่ต้องการสร้างใหม่Widget
และฉันต้องการ ID ในทางกลับกัน ฉันต้องการทำจากแบบฟอร์มที่ส่วนหน้าของฉันโดยไม่ต้องรีเฟรชหน้า ถ้าฉันขอ URL ฉันไม่สนใจว่ามันเป็น PHP, C #, ASP.NET หรือเทคโนโลยีอื่น ๆ ฉันแค่ต้องการสร้างวิดเจ็ตใหม่
REST API แยกส่วนแบ็กเอนด์ออกจากด้านหน้า ในทางเทคนิคหาก API ของคุณดีพอคุณสามารถเปลี่ยนแบ็กเอนด์ทั้งหมดได้ ตราบใดที่คุณยังคงโครงสร้าง REST API เดียวกันสิ่งใดก็ตามที่ขึ้นอยู่กับ API จะไม่ได้รับผลกระทบ
หาก REST API ของคุณนั้นเรียบง่ายและสอดคล้องกันมากพอโดยใช้คำนามWidgets
ว่าเป็นชุดของวัตถุและคำนาม / ตัวระบุที่ต้องการWidget/2
ระบุเอนทิตีเดียวมันตรงไปตรงมาจริงๆที่จะเขียน API นั้นในเทคโนโลยีที่แตกต่างกันอย่างมาก รหัส.
ใช้คำกริยาคำขอ HTTP มาตรฐาน
REST APIs ใช้ประโยชน์จากแกนกลางของวิธีการทำงานของเว็บและ VERBs (อ่าน: การกระทำ) ที่คุณใช้แผนที่เพื่อฟังก์ชั่น CRUD ข้อมูลมาตรฐาน
CREATE : POST
READ : GET
UPDATE : PUT/PATCH
DELETE : DELETE
มีกริยา HTTP เพิ่มเติม แต่เป็นพื้นฐาน ทุกการร้องขอทางอินเทอร์เน็ตจะใช้คำกริยาเหล่านี้ REST API ตั้งอยู่ด้านบนสุดของโมเดลที่เว็บสร้างขึ้นตามคำขอ ไม่จำเป็นต้องใช้เลเยอร์การสื่อสารหรือแบบจำลองนามธรรมในระหว่างนั้น เป็นเพียงคำขอ HTTP มาตรฐานไปยัง URL และส่งคืนการตอบกลับ คุณไม่สามารถรับได้ง่ายกว่านั้นมาก
โดยพื้นฐานแล้วมันทำให้นักพัฒนาตระหนักถึงถั่วและ bolts ของวิธีการใช้งานเว็บจริงและเมื่อคุณได้ใกล้ชิดกับการทำความเข้าใจวิธีการทำงานของโปรโตคอลพื้นฐานคุณสิ้นสุดการทำผลิตภัณฑ์ที่ดีขึ้นมีประสิทธิภาพมากขึ้น