โดยทั่วไปคุณมีจุดปลายเดียวซึ่งแสดงถึงชุดทั้งหมดของx :
/products
บอกว่าคุณต้องการที่จะปรับปรุงผลิตภัณฑ์เดียวที่คุณจะPUT/products/{id}
ไป หากคุณต้องการที่จะปรับปรุงผลิตภัณฑ์เดียว (ไม่ได้อัปเดตทุกสาขา) บางส่วนนอกจากนี้คุณยังสามารถใช้PATCH/products/{id}
ไป การลบเอนทิตีเดียว ( DELETEถึง/products/{id}
)
หากคุณต้องการกำหนดเป้าหมายแหล่งทรัพยากรเดียวคุณต้องผ่านเส้นทางซึ่งแหล่งทรัพยากรเดียวคุณต้องการแก้ไข
การดำเนินการเพียงอย่างเดียวที่ทำให้แผนการแตกคือการสร้างแหล่งข้อมูล เมื่อมีการสร้าง Ressource ที่คุณกำหนดเป้าหมายการเก็บรวบรวมเป็นทั้งบอกว่าโพสต์/products
ไป
ที่กล่าวไว้ชัดเจนว่าเป้าหมายสำหรับการดำเนินงานที่มีผลต่อการรวบรวมโดยรวมควรไปที่จุดรวบรวมปลายทางที่เหมาะสม
เช่นคุณต้องการเรียกคืนชุดย่อยของผลิตภัณฑ์ที่เป็นสีแดง
ได้รับ/products?colour=red
การ
ดังนั้นถ้าคุณต้องการที่จะลบทั้งหมดเหล่านี้คุณลบ /products?colour=red
หรือถ้าคุณต้องการที่จะลบผลิตภัณฑ์บางอย่างผ่านid
คุณสามารถลบ /products?id=1&id=2&id=3
ได้
สิ่งที่เกี่ยวกับการสร้างทรัพยากรจำนวนมาก ? โพสต์คอลเลกชันของคุณเพียงเพื่อ[{...},{...},{...}]
/products
เดียวกันจะไปสำหรับPUTและPATCH
นั่นตรงไปตรงมาจริงๆ
ในการตอบคำถามของคุณ:
ถ้าฉันต้องการเพิ่มลงในคอลเลกชันฉันจะส่งผลิตภัณฑ์บางอย่างที่มี PUT ได้หรือไม่
ไม่เพียง แต่คุณจะได้รับการสนับสนุนให้ทำเช่นนั้น
หากฉันต้องการลบผลิตภัณฑ์บางอย่างออกจากคอลเลกชันฉันจะส่งข้อมูลตัวกรอง (อาร์เรย์ของ ID) ด้วย DELETE ได้หรือไม่
ไม่เป็นไร ในฐานะที่เป็นอลอนโซ่ Eneko เขียนบางครั้งมีbulkoperationsห่อหุ้มผ่าน "ควบคุม" -endpoints ด้วยอาทิPOSTจะใช้ในการดำเนินงานของทริกเกอร์ (ที่ซับซ้อน)