1

我在 ie 中使用 XDR 进行跨域资源共享。它完美地工作。我需要知道如何在此指定返回数据类型。我需要将 json 作为 responseText。这是我的代码,

        if (window.XDomainRequest&& $.browser.msie && $.browser.version < 10) {
        xdr = new XDomainRequest();
        if (xdr) {
            xdr.onload = function () {
                var customResponse = xdr.responseText;

                }
            };
            xdr.open("get", url);
            xdr.send();
        }
4

2 回答 2

1

试试这个

 xdr.onload = function () {
               var data = $.parseJSON(xdr.responseText);

                }
于 2013-04-15T05:44:26.320 回答
0

不幸的是,XDR 不支持 setRequestHeader(MSDN显示 XDR 的能力很差),所以你不能告诉服务器你想要带有Accept请求头的 JSON。但是你可以提供查询字符串参数,告诉服务器这个信息(url += "?format=json")。当然,服务器必须对这个参数做出反应,否则就没有意义了。如果您自己维护服务器,这将是一件容易的事。如果没有,请检查您的 API 文档是否允许您请求不同的内容类型。如果两个选项的答案都是否定的,您可能应该回退到 JSONp 而不是 XDR。

于 2013-04-12T11:31:52.640 回答