【问题标题】:Mootools request - cannot make the examples workMootools 请求 - 无法使示例工作
【发布时间】:2010-09-28 12:20:29
【问题描述】:

我已经下载了 Request 和 Request.HTML 的示例,但都无法正常工作。我将它们解压缩到一个文件夹并浏览到它们的 index.html 以按原样执行它们,但响应始终是“请求失败”。不知道为什么。

我已经用不同的排列与它们一起玩过,可以让请求完成,但它总是失败。有什么方法可以找到失败的原因吗?我尝试了三种不同的浏览器关闭了我的防火墙,使用了相对和绝对文件引用,但没有任何效果。我错过了一些非常明显的东西吗?我会发布代码,但它是完全一样的示例......

任何帮助都会很棒。

干杯,

贾斯汀。

【问题讨论】:

    标签: mootools xmlhttprequest


    【解决方案1】:

    XMLHttpRequest() 成功,因为拨打本地电话没有任何问题。它只是不同,问题出在错误的 mootools isSuccess 函数中。 你必须覆盖它 Request 选项。这是jquery的做法

        // Determines if an XMLHttpRequest was successful or not
    httpSuccess: function( xhr ) {
        try {
            // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450
            return !xhr.status && location.protocol === "file:" ||
                // Opera returns 0 when status is 304
                ( xhr.status >= 200 && xhr.status < 300 ) ||
                xhr.status === 304 || xhr.status === 1223 || xhr.status === 0;
        } catch(e) {}
    
        return false;
    },
    

    【讨论】:

      【解决方案2】:

      大多数网络服务器都应该可以工作。只是您的文件系统没有像 Web 服务器那样“响应”浏览器请求:

      执行的ajax请求 本地(针对文件系统) 不能很好地工作,因为 ajax 逻辑 正在寻找状态变化和 服务器响应,两者都不是 由您的文件系统提供

      -- http://forum.mootools.net/viewtopic.php?id=5009

      据推测,XMLHttpRequest 对象可以处理的不仅仅是 HTTP 请求,但至少在 mootools 中,它并不意味着这样做。并且“file:///...”不是 HTTP 请求。它只是从您的文件系统中获取一个文件并将其显示在浏览器中。

      所以好消息是:任何网络浏览器,甚至包括在本地计算机上运行的基本浏览器,都应该可以正常工作:)

      【讨论】:

        【解决方案3】:

        太棒了!!非常感谢!我将它上传到离我最近的网络服务器,果然可以正常工作。

        我确实尝试过直接从我的文件系统执行一些 Ajax 调用,而不使用任何 javascript 库 - 使用 XMLHttpRequest() - 它工作正常,所以这看起来确实是一个奇怪的限制。我可以确定这将始终在任何网络服务器上工作,无论多么基本?只是我正在做的这个项目将使用多个托管环境,主要是纯 HTML 类型的网站,用于我无法控制的客户端环境……有最低规范吗?

        干杯 ;)

        【讨论】:

          【解决方案4】:

          如果我没记错的话,大多数浏览器中的 AJAX 请求无法通过本地文件系统完成 - 您需要像 Apache 这样的实际 Web 服务器。在 Windows 中,XAMPP 将让您在几分钟内启动并运行 Apache。

          【讨论】:

          • 你说得对,AJAX 需要一个 Web 服务器来处理请求(并且在发起响应的页面的同一域中)
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-09-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多