• ie下ajax错误:由于出现错误 c00ce56e 而导致此项操作无法完成


    于是打开超级简陋的 IE 调试工具,使用“网络”->“开始捕获”的工具抓取 ajax 请求头,得到 200 的响应头,但是在 jquery 的 ajax 中却是由 error 处理的,200 的结果怎么会跑到 error 去处理呢?

    于是,在 error 中加入各种调试输出:

    1
    2
    3
    4
    5
    6
    7
    8
    error: function(XMLHttpRequest, textStatus, errorThrown) {
        console.log(XMLHttpRequest);
        console.log('readyState: ' + XMLHttpRequest.readyState);
        console.log('status: ' + XMLHttpRequest.status);
        console.log(textStatus);
        console.log(errorThrown);
        alert('未提交成功!');
    },

    结果如下:

    1
    2
    3
    4
    5
    日志: [object Object]
    日志: readyState: 0
    日志: status: 0
    日志: error
    日志: Error: 由于出现错误 c00ce56e 而导致此项操作无法完成。

    于是搜索“由于出现错误 c00ce56e 而导致此项操作无法完成。”。

    原来是返回的编码与客户端编码不一致,我确定我的浏览器一直是在 uft-8 编码下的,而服务器返回的数据也加了编码设置。

    于是再次查看我是不是漏掉那一条小横杠了,结果是多了一个空格:

    1
    header('Content-Type: text/plain; charset= utf-8');

    改成:

    1
    header("content-type:text/plain; charset=UTF-8");

    就正常了。

  • 相关阅读:
    bzoj2763: [JLOI2011]飞行路线(分层图spfa)
    8.20noip模拟题
    8.19noip模拟题
    1046: [HAOI2007]上升序列(dp)
    bzoj1079: [SCOI2008]着色方案(dp)
    逆序对
    P1966 火柴排队(逆序对)
    NOIP 2015 DAY2
    8.15学校模拟
    差分
  • 原文地址:https://www.cnblogs.com/youxin/p/2938601.html
Copyright © 2020-2023  润新知