REST放入资源时如何处理查询参数?
时间:2020-03-05 18:49:07 来源:igfitidea点击:
我有一个REST数据服务,我想允许用户使用json,xml,csv等不同格式通过HTTP PUT创建新项目。我不确定如何最好地处理url中的格式规范:
PUT /ressource/ID/json PUT /ressource/ID/xml
或者
PUT /ressource/ID?format=json PUT /ressource/ID?format=xml
那么指定格式指示符的最佳方法是什么?
如果我使用查询参数指定格式,并想执行PUT
,我该如何使用curl?
curl -T test/data.json -d "format=json" http://localhost:5000/resource/33
不起作用。
curl -T test/data.json http://localhost:5000/update?format=json
可以,但是我宁愿让curl生成查询参数,而不是自己添加它们。
解决方案
回答
RESTful Web服务的一般原则是在适用时使用HTTP内置的功能。在这种情况下,我们可以通过将Content-Type标头设置为application / json或者application / xml来指示PUT请求内容的格式。