小编Ber*_*rty的帖子

如何使用jQuery的getJSON()方法传递请求标头?

我需要做一个getJSON()请求,但是如何传递授权和自定义标头?

我遇到了请求标头取名的问题,但不是值.通过fiddler中的手动请求显示URL,以便作为选项而不是GET/Url插入.

这是我们尝试做的一个例子,它在小提琴手中运行良好; 我怎样才能用AJAX函数复制它?

GET /Service.svc/logins/gdd53535342/houses/vxcbdfsdg/people/dsgsdggd?format=json HTTP/1.1
User-Agent: Fiddler
Authorization: Basic rgbg423535fa23y4436
X-PartnerKey: df3fgeg-g5g6-b55b-f3d2-dsgg353523
Host: 154.34.53.54:2757
Run Code Online (Sandbox Code Playgroud)

JavaScript代码:

xhr = new XMLHttpRequest();

$(document).ready(function() {
  $.ajax({
    url: 'http://localhost:437/service.svc/logins/jeffrey/house/fas6347/devices?format=json',
    type: 'GET',
    datatype: 'json',
    success: function() { alert("Success"); },
    error: function() { alert('Failed!'); },
    beforeSend: setHeader       
  });   
});

function setHeader(xhr) {
  xhr.setRequestHeader('Authorization', 'Basic faskd52352rwfsdfs');
  xhr.setRequestHeader('X-PartnerKey', '3252352-sdgds-sdgd-dsgs-sgs332fs3f');
}
Run Code Online (Sandbox Code Playgroud)

Fiddler正常请求标题:

GET /service.svc/logins/jeffrey/house/fas6347/devices?format=json HTTP/1.1
User-Agent: Fiddler
Authorization: Basic faskd52352rwfsdfs
X-PartnerKey: 3252352-sdgds-sdgd-dsgs-sgs332fs3f
Host: localhost:437
Run Code Online (Sandbox Code Playgroud)

提琴手通过Ajax()请求标题:

OPTIONS service.svc/logins/jeffrey/house/fas6347/devices?format=json HTTP/1.1
Host: localhost:437
User-Agent: Mozilla/5.0 (Windows; U; …
Run Code Online (Sandbox Code Playgroud)

jquery getjson

73
推荐指数
3
解决办法
12万
查看次数

标签 统计

getjson ×1

jquery ×1