afinal 上传文件服务端接受参数为空
做个了上传和提交数据的测试,遇到点问题,如果只加 string类型的参数,server端接受到参数没问题,如果加上file类型的,server端servlet 接受到参数都为空了。
代码如下
FinalHttp fh = new FinalHttp();
AjaxParams params = new AjaxParams();params.put("action", "test");
params.put("username", "aaaaa");
try {
params.put("file",new File("/mnt/sdcard/1.jpg"));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
fh.post(serverUrl,params, new AjaxCallBack<Object>() {
@Override
public void onLoading(long count, long current) {
super.onLoading(count, current);
}
@Override
public void onSuccess(Object t) {
// TODO Auto-generated method stub
logger.info("返回信息是+"+ t.toString());
}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
楼主,我也是用的 像你这样的请求方式,传递了中文字符,结果服务器的数据库乱码了。。服务器的编码也是UTF-8,fh.configCharset(String charset)也无效 不明白怎么设置。有没有可以指教呢
楼主,请问这个问题你解决了吗?望请指点!
引用来自“michaely”的答案
multipart request形式提交给服务器后,数据如下:servlet的request接收到的数据如下:
手机上传大文件报错,应该怎么处理?Afinal最大支持多大文件上传?希望大神帮忙,出错代码:
作者的头像虽然很猥琐。但是确实很有才。大神级别。
你好,请问一下怎么区分上传的是普通文字还是图片。
List<DiskFileItem> DiskFileItems = sfu.parseRequest(request);这句代码报错。。。提示把DiskFileItem改成FileItem
如果上传文件的话,afinal是以了multipart request的形式提交到服务器。
1、如果没有文件上传的话:
直接使用:
就可以接受到传来的值了。
2、如果有文件上传,afinal使用了multipart request的形式提交到服务器。这里给传出了接收数据的方法(下面是一个普通的servlet类的dopost方法,其他语言自行参考):
这里使用到了apache的FileUpload库:网址http://commons.apache.org/fileupload/
希望,能对你有帮助。