是否有一个多部分 POST 库可以实现与从 html 表单进行 POST 相同的效果?例如 - 使用 Java 以编程方式上传文件与使用 html 表单上传文件。而在服务器端,它只是盲目地期望来自客户端的请求是一个多部分的 POST 请求,并根据需要解析出数据。
有没有人试过这个?
具体来说,我想看看我是否可以用Java模拟以下内容
用户通过提交包含一个或多个文件输入字段的 HTML 表单来创建 Blob。您的应用设置blobstoreService.createUploadUrl()作为此表单的目标(操作),向函数传递应用程序中处理程序的 URL 路径。当用户提交表单时,用户的浏览器将指定的文件直接上传到 Blobstore。Blobstore 重写用户的请求并存储上传的文件数据,将上传的文件数据替换为一个或多个相应的 blob 键,然后将重写的请求传递给您提供给 blobstoreService.createUploadUrl() 的 URL 路径中的处理程序。此处理程序可以根据 blob 键进行额外处理。最后,处理程序必须返回仅包含标头的重定向响应(301、302 或 303),通常是浏览器重定向到指示 Blob 上传状态的另一个页面。
将blobstoreService.createUploadUrl设置为表单操作,在表单的 POST 完成时传递应用程序路径以进行加载。
<body>
<form action="<%= blobstoreService.createUploadUrl("/upload") %>" method="post" enctype="multipart/form-data">
<input type="file" name="myFile">
<input type="submit" value="Submit">
</form>
</body>
请注意,如果上传表单被创建为 JSP,这就是它的外观。表单必须包含文件上传字段,并且表单的 enctype 必须设置为 multipart/form-data。当用户提交表单时,POST 由创建 Blob 的 Blobstore API 处理。API 还为 blob 创建一条信息记录并将记录存储在数据存储中,并将重写的请求作为 blob 键传递给给定路径上的应用程序。