Java 上传前获取post参数
当我使用Commons FileUpload时,parseRequest(request)方法会上载文件并读取附加的post参数。所以我只能在上传文件后才能得到参数值。 问题是在上传文件之前我需要这些参数值(其中一个参数是upload_path) 有没有办法先从多部分内容中获取post参数,然后开始上传到正确的文件夹 (request.getParameter(name)将为多部分内容返回null)Java 上传前获取post参数,java,file-upload,apache-commons,Java,File Upload,Apache Commons,当我使用Commons FileUpload时,parseRequest(request)方法会上载文件并读取附加的post参数。所以我只能在上传文件后才能得到参数值。 问题是在上传文件之前我需要这些参数值(其中一个参数是upload_path) 有没有办法先从多部分内容中获取post参数,然后开始上传到正确的文件夹 (request.getParameter(name)将为多部分内容返回null) 提前谢谢 这对我来说是可行的,在第一次检查中,我检查了所有参数,然后下载了非表单字段 Servl
提前谢谢 这对我来说是可行的,在第一次检查中,我检查了所有参数,然后下载了非表单字段
ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iter = upload.getItemIterator( request );
while ( iter.hasNext() ) {
FileItemStream item = iter.next();
String name = item.getFieldName();
InputStream stream = item.openStream();
if ( item.isFormField() ) {
byte[] buffer = new byte[ 128 ];
int len = stream.read( buffer );
String value = new String( buffer, 0,len );
if ( name.equals( "name" ) ) {
filename = value;
}
System.err.println( "Form field " + name + " with value " + value + " detected." );
stream.close();
}
}
这对我来说是可行的,第一次检查所有参数,然后下载非表单字段
ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iter = upload.getItemIterator( request );
while ( iter.hasNext() ) {
FileItemStream item = iter.next();
String name = item.getFieldName();
InputStream stream = item.openStream();
if ( item.isFormField() ) {
byte[] buffer = new byte[ 128 ];
int len = stream.read( buffer );
String value = new String( buffer, 0,len );
if ( name.equals( "name" ) ) {
filename = value;
}
System.err.println( "Form field " + name + " with value " + value + " detected." );
stream.close();
}
}