美文网首页
uploadify图片上传控件在ie下报http406问题

uploadify图片上传控件在ie下报http406问题

作者: 48892085f47c | 来源:发表于2016-07-27 21:26 被阅读0次

         前端使用uploadify图片上传控件,后端使用spring mvc框架,ajax上传图片在ie浏览下报http406错误,如图1:

    图1:错误消息

    经本地debug调试,uploadify控件在ie浏览器下request header accept为“text/*”,而在chrome浏览器下为“*/*”;

    补充下Http请求头accept属性含义:Accept代表发送端(客户端)希望接受的数据类型;查看MediaType.java可查询所有数据类型;eg:Accept ; text/html application/xhtml_xml,application/xml;text:用于标准化地表示的文本信息,文本消息可以是多种字符集或多种格式的;text/html 表示html文档Application:用于传输应用程序数据或者二进制数据;application/xml 表示xml文档;如图2:

    图2:accpet数据类型枚举类

    继续debug发现ajax请求,返回结果转化为前台所需json数据时,spring mvc框架会根据返回结果选择可客户端所接受的类型,AbstractMessageConverterMethodProcessor.java部分源码如下:

    判定客户端所能接受数据类型

    例如:注解为@ResponseBody数据返回类型为Map<String,Object>,其可接受的数据类型为application/json和application/*+,若数据返回类型为String,其可接受的数据类型为*/*;

           由于uploadify控件在ie下请求request头header accpet为“text/*”,而返回类型只能接受application/json和application/*+,因此会报错,错误信息大致如下:org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation

    解决方案:

    1、spring json解析配置supportedMediaTypes属性增加text/json;

    spring mvc bean配置

    2、设置reponse head accept 为“application/json”,使用处理流方式实现json输出;

    第一次写博客,你的点赞是我最大的支持!本文为作者原创,转载请标明出处:http://www.jianshu.com/p/688ac5ad2764

    相关文章

      网友评论

          本文标题:uploadify图片上传控件在ie下报http406问题

          本文链接:https://www.haomeiwen.com/subject/rmaojttx.html