后台
使用 Fetch API 发送表单数据时,经常会遇到与编码数据时使用的内容类型和边界相关的问题。本文探讨了这些问题的本质,并提供了编码 multipart/form-data 与 application/x-www-form-urlencoded 的解决方案。
FormData 和 multipart/form-data
正如 MDN 的 FormData 文档中提到的,FormData 以 multipart/form-data 格式隐式编码数据。此格式不适合发送 Content-Type 为 application/x-www-form-urlencoded 的数据。
application/x-www-form-urlencoded 的解决方案
要将数据编码为 application/x-www-form-urlencoded 格式,您有两种选择:
URLSearchParams 的替代方案
如果有实验支持,您还可以将 FormData 对象直接传递给 URLSearchParams,而不是手动附加值。此方法仍在开发中,应在实施前进行彻底测试。
结论
通过了解 FormData 的机制和 Fetch API 的行为,开发人员可以发送表单数据正确地采用 multipart/form-data 或 application/x-www-form-urlencoded 格式,确保服务器端正确的数据传输和处理。
以上是如何使用 Fetch API 发送表单数据:Multipart/form-data 与 Application/x-www-form-urlencoded?的详细内容。更多信息请关注PHP中文网其他相关文章!