我有一个关于设计以 JSON 格式返回和接受数据的 RESTful API 的“概念”问题。
考虑以下请求和响应:
GET http://host/records/12345
{ "id":"12345", "address":{"street":"main street","number":5,"city":"springfield"}}
GET http://host/records/12345/address
{"street":"main street","number":5,"city":"springfield"}
GET http://host/records/12345/address/city
{"city":"springfield"}
OR
springfield (=not valid json)
我意识到第二个答案不是有效的 JSON 响应,所以我认为后者是我问题的正确答案。然而,在我看来,以键/值的形式响应是多余的,因为请求者在请求期间已经知道“键”。
更新计数相同:
当我想用另一个值更新我的 12345 记录的城市时,提交什么更正确:
PUT http://host/records/12345/address/city
{"city":"paris"} <- content of body when submitting
OR
paris <- content of body when submitting (=not valid json)
我问的原因是因为这样做已经足够了
PUT http://host/records/12345/address
{"city":"paris"} <- content of body when submitting
什么被认为是最合适的方法?
谢谢,
周杰伦