之前用form表单上传,现在换了无刷新。就不灵了
浏览器直接走error,不走success,火狐不报错,,,uc报400. eclipse后台也不报错。。就晕了。
@RequestMapping("/imageUpload1.do")
@ResponseBody
public Result Upload(@RequestParam("fileToUpload") MultipartFile file ,HttpServletRequest request,HttpServletResponse response){
if(file==null){
System.out.println("file is null");
}
Result result=new Result();
result.setMsg("good");
return result;
}
<body>
<!-- 点击图片,打开文件选择器,确定,上传。(这是网络上的一个图片) -->
<img id="upload" alt="" src="upload.png">
<!-- 隐藏file标签 -->
<input id="fileToUpload" style="display: none" type="file" name="upfile"><br/>
<span id="ok"></span>
</body>
<script type="text/javascript">
$(function(){
//点击打开文件选择器
$("#upload").on('click', function() {
$('#fileToUpload').click();
});
//选择文件之后执行上传
$('#fileToUpload').on('change', function() {
$.ajaxFileUpload({
url:'http://localhost:8080/upload/imageUpload1.do',
secureuri:false,
fileElementId:'fileToUpload',//file标签的id
dataType: 'text',//返回数据的类型
success: function (data,status) {
$("#ok").html(result.msg);
},
error: function (data,status,e) {
alert("链接错误");
}
});
});
})
</script>
但是直接用get测试链接。
报错:
<!-- 定义文件上传处理器 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8" />
<!-- 指定所上传文件的总大小不能超过800KB......注意maxUploadSize属性的限制不是针对单个文件,而是所有文件的容量之和 -->
<!-- <property name="maxUploadSize" value="800000"/> -->
</bean>
<mvc:annotation-driven/>
<!-- 注解扫描路径 -->
<context:component-scan base-package="day1email"/>
</beans>
<servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
inputid="fileToUpload"style="display:none"type="file"name="upfile"
我对前端不太熟,如果没记错的话,提交的参数名用的应该用的是name吧,你这个name和spring取的参数名不一样
问题找到了,是这个ajaxfileupload本身就是个残次品,网上人都说,换了其他人的修改版本,立马ok。。谢谢了谢谢,刚看到,改了,后台能收到了,不过前端还是有问题,在改。这种情况你应该把Log发上来的http://pan.baidu.com/s/1pJTeCNx帮忙看一下,因为不能再添加了,格式不对,看起来也麻烦,我放到百度云了。两张图片,一张请求信息,一张错误信息没有日志,后台啥反应也没有不设置mime能上传?如果只是图片的话,用Multipart上传可能还不如直接BASE64
可以绕过很多问题
但是不是图片,是文件,pdf,doc等