我有一个简单的RESTful方法,它当前返回一个对象的JSON表示。
我的问题更多来自架构方面而非完全技术问题。
RESTful服务是否应该以同时返回JSON和XML的方式设计?
据我所知,这是一种不好的做法,应该为此定义单独的资源。一个资源应返回JSON数据和其他一个XML。
我是否正确思考?
答案 0 :(得分:19)
相同的资源可能会返回XML或JSON,具体取决于请求,但它不应同时返回两者。您将根据请求知道返回哪一个,因此无需生成两者 - 只需生成您将要返回的那个。
以下是您可以选择决定返回的方式。按顺序进行评估,在确定要返回的格式后停止:
GET /user/1234.json
或GET /user/1234.xml
),请将其用作请求的格式。答案 1 :(得分:2)
没有。您表示资源的方式应该由您的客户期望的内容来定义(有一个http-header来说明客户接受的表示形式)。 这意味着您的服务器应该检查当前客户端接受的表示形式,并以此表示形式发送响应(或发送一个表示他不能代表该媒体类型资源的响应)