0

我正在尝试获取 Flipkart api 数据。像这样,但我无法使用 xhrfield 发送 heder 这是我的代码:

$.ajax({
    type: 'GET',
    url:'https://affiliate-api.flipkart.net/affiliate/search/json?query=iPhone+mobiles&resultCount=3',
    crossDomain: true,
//    dataType: 'JSONP',
    /*xhrFields: {
            withCredentials: true
        },*/
  //    contentType: 'application/json; charset=utf-8',

      beforeSend : function(xhr) { 
       xhr.withCredentials = true;        
        xhr.setRequestHeader('Fk-Affiliate-Id', 'myid');
        xhr.setRequestHeader('Fk-Affiliate-Token', 'mytoken');
      },
   /*   headers: {
        'Access-Control-Allow-Origin':'*',
        'Fk-Affiliate-Id': 'myid',
        'Fk-Affiliate-Token': 'mytoken',
        'Content-Type': 'application/x-www-form-urlencoded'
      },*/

    success: function(data){ ......
}
});

如您所见,我已经尝试了两种方法,但无法使用 xhrfield 发送标头。如果我评论 xhrfield 标题将被发送

4

1 回答 1

0

您不能发送带有 JSONP 请求的标头,因为它所做的只是为页面设置一个脚本标记。

JSONP 请求包括将脚本标记附加到页面。它在脚本执行时向脚本侦听的 URL 添加一个回调参数。无法将标头添加到外部脚本。

该站点需要支持 COR 的 JSON 请求以发送标头。

于 2016-07-15T17:39:07.987 回答