JQuery.ajax()没有收到响应正文

时间:2014-12-10 07:27:51

标签: jquery ajax

我试图制作一个SmartTV应用程序,它必须从某个URL请求它的频道列表。

如果是这样,我在看到预期的内容长度时没有收到响应文本。 jQuery.ajax在状态为0时抛出一些错误。但是,当通过浏览器打开相同的URL时,我收到了预期的响应。

到目前为止,我发现的唯一区别是浏览器能够设置收到的cookie,然后才能将其发回。但SmartTV应用程序就像是另一个执行跨域ajax请求的网站。它会收到响应中的cookie,但没有设置它(或者至少它在需要时不会发送回来)。

jQuery.ajax({
    url: 'http://url...',
    data: "",
    dataType: 'xml',
    success: function (output, status, xhr) {
        alert(output);
    },
    error: function(xhr, ajaxOptions, thrownError) {
        alert("xhr " + xhr.status);
        alert("error " + thrownError);
    },
    crossDomain: "true"
});

是否可以像我在这里使用它一样使用jquery?如果没有,那么获得该响应并设置正确cookie的另一种方式是什么?

修改:它似乎不是任何Cookie的问题。我已经创建了一个我的应用程序请求的界面WebAPI。 WebAPI能够获得正确的结果,然后将其作为纯文本发送到SmartTV应用程序。应用程序端的结果是相同的 - 在响应标头中,我看到了预期的内容长度,但没有内容。有趣的是,我测试该应用程序作为IE中的普通网站,而不是一些故障的SmartTV。如果jQuery.ajax没有返回响应正文,我做错了什么?

编辑2:哦,嗯,同样的原始政策......

1 个答案:

答案 0 :(得分:0)

使用xhr.responseText获取数据。