1

我遇到了一个非常奇怪的问题。以下 jQuery 接收 HTTP 405 错误代码并发送 OPTIONS 请求方法而不是 GET。

function GetPerf() 
{
    jQuery.support.cors = true;
    leInterval = setInterval(function()
    {
    $.ajax({
        url: "http://localhost/PerfMon3/api/performance/categories",
        data: { machine_name : "CLOUDMACHINE" },
        type: "GET",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        xhrFields: {
        withCredentials: true
        },
        success: function (data) {
            WriteResponse(data);
        },
        error: function (x, y, z) {
            alert(data);
        }
    });
    },
    1000)
}

有趣的是,这在 Internet Explorer 中运行得非常好,但 Chrome 我得到了 405。有人知道发生了什么吗?

附加说明:无论使用何种浏览器,从托管应用程序的 IIS 浏览器运行它时,它都能正常工作。这个问题只在远程机器上起作用。

4

1 回答 1

0

好吧,我只是喜欢在 SO 上询问后立即通过自己的测试找出问题的答案。我很抱歉,伙计们。

我将 jQuery 中的 url 行更改为

url: "http://cloudmachine/PerfMon3/api/performance/categories"

现在它工作得很好。

不过,为什么它最初只在 IE 中有效?这没有意义。

于 2012-09-06T03:41:43.173 回答