您如何获取在 GAE 上上传的原始文件名?
基于以下示例:
https://developers.google.com/appengine/docs/java/blobstore/overview#Uploading_a_Blob
您如何获取在 GAE 上上传的原始文件名?
基于以下示例:
https://developers.google.com/appengine/docs/java/blobstore/overview#Uploading_a_Blob
Blobstore 上传处理程序重写请求(删除正文,添加 blobkey),但保留所有其他内容不变。
POST mimetype 是multipart/form-data
,GAE/J 没有提供解析的 API。所以你需要使用 3rd 方库来解析参数 - Apache Commons-FileUpload(也作为maven artifact)。
在您的post()
处理程序中使用它,如下所示:
ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iterator = null;
try {
iterator = upload.getItemIterator(request);
while (iterator.hasNext()) {
FileItemStream item = iterator.next();
String filename = item.getName();
}
} catch (FileUploadException e) {
// handle the error here
}
由于可以一次上传多个文件,因此您需要遍历一组参数并取出您感兴趣的文件。