在使用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碰到的問題,雖然不多但是挺煩人的,再次感謝解決問題的大神。。。