REST API Design将JSON数据和文件发送到同一请求中的api
我正在现有的应用程序之上创建一个REST API。 其中一项功能需要将json数据与用户上传的文件一起使用。
我不确定如何将相同请求中的文件和json数据发送到REST API?
我有JSON部分工作,我测试使用curl:
curl -XPOST http://localhost:8080/myapp/foo -d '{"mydata": {
"name": "somename",
"gender": "male"
}}'
//I would like to send an image (say, profile image) with the above request as well.
我使用的是Grails应用程序,所以我在控制器中获取这些数据,如下所示: new Foo(params.mydata)
。
题
contentType
是什么? 更新
我发现另一个问题是同样的问题。 从这个问题的答案看来,似乎只有三个选择,没有一个表示可以在同一个请求中发送json数据和文件。 这是非常令人沮丧的......我会继续讨论这个问题,看看是否有人有其他想法。
我认为做到这一点的“正确”方式是用多部分信息。 这样,您可以使用相应的正确MIME类型发布JSON和图像。 关于多部分MIME类型的维基百科文章有这样一个例子。 它看起来像Apache httpcommons和泽西都支持这种事情,显然卷曲也是!
链接地址: http://www.djcxy.com/p/48643.html上一篇: REST API Design sending JSON data and a file to the api in same request
下一篇: RESTful Web Service Upload/Download Large Data With JSON