在使用uploadify3.2.1中碰见的问题,上网找了好多资料终于解决,这是和springMVC结合中碰见的问题,现在总结一下:
一、ie11 json问题
因为项目需求,必须使用ie11
问题一:每次点击文件上传的时候不是下载文件,
问题二 :就是controller中接受不到数据(Google浏览器没问题),说是上传问题
IE上传时请求头是:Accept: text*
ie浏览器的json数据转换也不同,所有点击上传完成后会下载json
解决办法:
在配置文件中如下配置,解决上面两个问题
<!-- JSON -->
<!-- 处理JSON数据转换的 -->
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="mappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
<bean
class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="mappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
<!-- 解决IE11和google浏览器之间上传的差异
IE上传时的请求头中,Accept: text/*
而Chrome的请求头中,Accept: */* -->
<bean id="mappingJacksonHttpMessageConverter"
class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<bean class="org.springframework.http.MediaType">
<constructor-arg index="0" value="text" />
<constructor-arg index="1" value="plain" />
<constructor-arg index="2" value="UTF-8" />
</bean>
<bean class="org.springframework.http.MediaType">
<constructor-arg index="0" value="*" />
<constructor-arg index="1" value="*" />
<constructor-arg index="2" value="UTF-8" />
</bean>
<bean class="org.springframework.http.MediaType">
<constructor-arg index="0" value="text" />
<constructor-arg index="1" value="*" />
<constructor-arg index="2" value="UTF-8" />
</bean>
<bean class="org.springframework.http.MediaType">
<constructor-arg index="0" value="application" />
<constructor-arg index="1" value="json" />
<constructor-arg index="2" value="UTF-8" />
</bean>
</list>
</property>
</bean>
二、uploadify初始化访问本机
每次uploadify初始化都会访问本机,网上找到了解决办法
把uploadify的js文件中
this.settings.upload_url = SWFUpload.completeURL(this.settings.upload_url);
this.settings.button_image_url = SWFUpload.completeURL(this.settings.button_image_url)
改为:
this.settings.upload_url = SWFUpload.completeURL(this.settings.upload_url);
this.settings.button_image_url = this.settings.button_image_url ?
SWFUpload.completeURL(this.settings.button_image_url) :
this.settings.button_image_url
三、总结
以上就是使用uploadify碰到的问题,虽然不多但是挺烦人的,再次感谢解决问题的大神。。。