0

我正在尝试使用“application/json”的接受标头向 WebAPI 服务发送 ajax 请求

当我在服务中设置断点时,我看到接受标头以“ / ”的形式出现。这对我来说行不通,因为我们的代码会检查我们的“已知”媒体类型,如果找不到则拒绝请求。

这是当前状态的 ajax 请求:

$.ajax({
        url: requestUrl,
        type: 'GET',
        accept: {
            json: 'application/json'
        },
        success: function(response, status, xhr) {
            displayUsers(response);
        },
        error: function(xhr, status, exception) {
            alert(exception);
        }
    });

我已经在 IE、Chrome 和 Firefox 中尝试过。全部都一样。我正在使用cors。

4

2 回答 2

0

我仍然不清楚真正的问题是什么,但我能够通过设置 headers 集合而不是像通常那样只接受 header 来解决它:

$.ajax({
        url: requestUrl,
        type: 'GET',
        headers: {
         'Accept' : 'application/json'
        },
        success: function(response, status, xhr) {
            displayUsers(response);
        },
        error: function(xhr, status, exception) {
            alert(exception);
        }
    });
于 2013-05-23T16:58:02.660 回答
0

Access-Control-Allow-Headers: accept当您发出跨域请求时,您的响应(或 OPTIONS 响应,如果是预先飞行的 CORS)是否包含允许接受标头?我的猜测是你没有,浏览器切换到默认行为发送*/*

于 2013-05-22T05:11:06.960 回答