JQuery to Web API:IE9 POST始终返回' Access is Denied'

时间:2014-12-16 23:45:41

标签: javascript jquery internet-explorer asp.net-web-api internet-explorer-9

我有一个接受POST请求的Web API Web服务。它适用于Chrome,IE10 +,但在IE9中它始终返回'错误:访问被拒绝'。我已经多次阅读了this post,并且我尝试了其中的所有内容,但我继续获得相同的访问被拒绝错误。我刚刚在测试机器上运行Fiddler,当我尝试进行服务调用时,IE9甚至没有发出请求,它只是直接进入代码中的错误块。

这是进行调用的jquery函数:

function Login (username, password, appId, org, callback) {

    var response = {};

    var loginRequest = {
        Organization: org,
        ApplicationId: appId,
        UserName: username,
        Password: password
    };

    $.ajax({
        type: 'POST',
        url: "theurl",
        data: '=' + JSON.stringify(loginRequest),
        success: function (data) {
            response = {
                status: data.status,
                info: data.user
            };
            return callback(response);
        },
        error: function (error) {
            response = {
                status: false,
                info: error.statusText
            };
            return callback(response);
        }
    });

}

我知道数据看起来有点时髦,但这是由于奇怪的Web API问题is explained here。我只想重申一下,这个功能在除IE9之外的所有其他浏览器上都能正常工作。我已经在我的html文件中引用了jquery.xdomainrequest.js文件,但它并没有为我解决这个问题。我已尝试在此函数中指定dataType和contentType,但这些会导致其他错误。

编辑:忘记提及,这个Web应用程序运行在安全(https)端口上,它用于登录的Web API服务也在安全端口上运行,但它们位于不同的机器上,并且不同于域名(相同域名)。

我已经为此工作了好几天,我很难过。非常感谢您的帮助!

0 个答案:

没有答案