我正在尝试捕获发布到 JSP 页面的图像数据,以便使用其 S3 PutObject API 将其发送到 AWS。我有一个 JSP Web 应用程序,当客户端浏览器上传选定的图像文件时,我想通过 JSP 页面 GetImage 捕获后端的数据并解析它,以便我可以仅将图像发送到 AWS 的 S3。任何帮助将不胜感激。
更新 - 我发现当表单具有 enctype="multipart/form-data" 时,表单数据是通过数据流发送的。其中,内容由字段名称和数据描述。看起来图像数据是基于 64 编码的。我现在正在寻找如何解析字段和数据。
<html>
<body>
<form class="form-horizontal" name="myForm" action="GetImage" method="post" enctype="multipart/form-data">
<fieldset>
<div class="form-group">
<input type="file" name="test" accept=".jpg,.png,.tif,.gif">
</div>
<button class="btn btn-primary btn-lg">Post</button>
</fieldset>
</form>
</body>
</html>
事实证明,文件数据被编码在具有 encType multipart/form-data 的表单上的请求数据流中。要读取原始发布文件,您必须读取数据流,然后解析字段条目。查找名称、内容类型、文件名等。