我想使用json上传二进制文件。 我选择Json是因为我希望通过该文件发送更多信息。
我将通过 -
来做到这一点我想知道这是否是实现目标的唯一合法途径?另外,如果某个地方已经有一个插件可以提供这种能力吗?
答案 0 :(得分:0)
不,这不是唯一的方法 - 其他方法之一就是提交一个包含文件的表单。此类表单使用multipart/form-data
内容类型。
请参阅W3C documentation on the subject:
内容类型“
application/x-www-form-urlencode
d”对于发送大量二进制数据或包含非ASCII字符的文本效率不高。内容类型“
multipart/form-data
”应用于提交包含文件,非ASCII数据和二进制数据的表单。
因此,没有必要重新发明轮子 - 浏览器已经支持以简单的方式发送文件以及其他信息。您只需创建一个表单,用户可以在其中输入数据并选择文件,然后将所有这些文件发送到具有multipart/form-data
内容类型的服务器,并且您的Web框架应该能够理解它处理文件和文本数据