REST - ใส่ ID ในร่างกายหรือไม่?
สมมติว่าฉันต้องการมีทรัพยากร RESTful สำหรับผู้คนโดยที่ลูกค้าสามารถกำหนด ID ได้ บุคคลมีลักษณะดังนี้: {"id": <UUID>, "name": "Jimmy"} ตอนนี้ลูกค้าควรบันทึก (หรือ "PUT") อย่างไร PUT /person/UUID {"id": <UUID>, "name": "Jimmy"} - ตอนนี้เรามีการทำซ้ำที่น่ารังเกียจซึ่งเราต้องตรวจสอบตลอดเวลา: ID ในร่างกายตรงกับที่อยู่ในเส้นทางหรือไม่? การแสดงแบบไม่สมมาตร: PUT /person/UUID {"name": "Jimmy"} GET /person/UUID ผลตอบแทน {"id": <UUID>, "name": "Jimmy"} ไม่มีรหัสในเนื้อหา - เฉพาะในตำแหน่ง: PUT /person/UUID {"name": "Jimmy"} GET /person/UUID ผลตอบแทน {"name": "Jimmy"} ชนิดของการไม่มีPOSTดูเหมือนความคิดที่ดีตั้งแต่ ID …