希望一次response的body中能够同时包括string、二进制文件这样不同类型的数据,可以像request一样使用multipart/form-data吗?目前搜索的结果看没有前端解析multipart/form-data格式的工具,或者使用其他的方法?
目前思路:
1.使用json,将二进制文件编码为base64
2.使用json,二进制文件提供服务器静态路径,需要前端get静态资源
3.使用multipart/form-data,但是找不到前端解析form-data的工具
软件信息:
前端:vue+axios,后端:flask或者springboot
用什么方法解决这样的问题呢?
是我的话,我就要后端把这个接口分为两个接口,一个给JSON数据,一个给二进制数据。。。
不知道你这个问题是否已经解决, 如果还没有解决的话:这个是通过浏览器上传文件时所用的编码方式,在使用浏览器上传文件时,须将 form
表单的 enctype
字段设置为 multipart/form-data
。
这种编码方式的请求体比较长,因为包含了文件数据,通过 boundary
来分割不同字段的数据。
关于此类表单的详细信息可以查看
rfc1867。POST http://httpbin.org HTTP/1.1
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryrGKCBY7qhFd3TrwA
------WebKitFormBoundaryrGKCBY7qhFd3TrwA
Content-Disposition: form-data; name="text"
text
------WebKitFormBoundaryrGKCBY7qhFd3TrwA
Content-Disposition: form-data; name="file"; filename="111.jpg"
Content-Type: image/png
PNG ... content of 111.jpg ... ... ... ... ...
------WebKitFormBoundaryrGKCBY7qhFd3TrwA--