multipart/form-data 是浏览器在表单包含文件输入框时使用的媒体类型,也是向 API 上传文件的常用方式。请求体被分成多个部分,每个部分都有自己的请求头——一个名称,可选的文件名和一个 Content-Type——因此文本字段和二进制文件会一起在一个请求中传输。
Content-Type 标头声明了一个边界字符串,请求体是由该边界分隔的各个部分组成的。客户端应让其 HTTP 库构建请求体并设置标头(包括边界字符串);服务器会检查每个部分声明的类型和大小,如果文件类型不被接受则返回 415 错误,如果文件过大则返回 413 错误。
手动设置 Content-Type: multipart/form-data 很有帮助。如果没有边界参数,服务器无法分割请求体,上传就会失败,而且失败的方式也令人困惑。对于 fetch 和 FormData 来说,正确的做法是完全不设置请求头。
POST /movies/v1/movies/{id}/poster模拟多部分海报上传,对于不支持的图像类型返回 415,对于过大的图像返回 413——这是每个上传端点都需要的两个检查。
所有术语 · 测试技巧 · 全部 39 个模拟 REST API
最后更新时间