我正在尝试使用以下设置向google contacts API发出ajax请求:
$.ajax({
url: "https://www-opensocial.googleusercontent.com/api/people/@me/@all",
dataType: 'jsonp',
data: {
alt: 'json-in-script'
},
headers: {
'Authorization': 'Bearer ' + token
},
success: function(data, status) {
return console.log("The returned data", data);
}
});
Run Code Online (Sandbox Code Playgroud)
但是身份验证标头似乎没有设置.有任何想法吗?

我想通过浏览器开始简单的文件下载,但是必须使用自定义HTTP标头传递访问令牌:
GET https://my.site.com/some/file
Authorization: access_token
Run Code Online (Sandbox Code Playgroud)
如何在网站URL后面注入Authorization:标头?我知道使用查询字符串可以做到这一点,但我想用标题来做.
我熟悉XMLHttpRequest,但据我所知,它不会触发下载,它只读取内容,我想下载的文件至少是几百MB.
xhr.setRequestHeader('Authorization', 'access_token');
Run Code Online (Sandbox Code Playgroud)
这看起来像一个简单的任务,但我是没有经验的编码器,所以任何帮助都会很好.谢谢.
我对javascript和网络编程很新,我需要一些帮助.我有一个HTTP请求,我需要通过javascript发送,并需要将输出存储在一个变量中.我尝试只使用调用url:
https://api.fantasydata.net/nfl/v2/JSON/PlayerSeasonStats/2015
Run Code Online (Sandbox Code Playgroud)
但它返回一个身份验证错误,因为我没有发送我的API密钥,它没有告诉我如何只在URL中执行它.API密钥被列为标题而不是参数,我不知道如何处理它.我尝试使用XMLHttpRequest()类,但我不太确定我到底知道它做了什么,也不能让它工作.
实际的HTTP请求
GET https://api.fantasydata.net/nfl/v2/JSON/PlayerSeasonStats/2015 HTTP/1.1
Host: api.fantasydata.net
Ocp-Apim-Subscription-Key: ••••••••••••••••••••••••••••••••
Run Code Online (Sandbox Code Playgroud)
我只需要弄清楚如何发送该请求以及密钥以及如何存储它作为javascript中的变量返回的JSON文档.
编辑:这是我到目前为止:
function testingAPI(){
var key = "8a1c6a354c884c658ff29a8636fd7c18";
httpGet("https://api.fantasydata.net/nfl/v2/JSON/PlayerSeasonStats/2015",key );
alert(xmlHttp.responseText);
var x = 0;
}
function httpGet(theUrl,key)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false ); // false for synchronous request
xmlHttp.setRequestHeader("Ocp-Apim-Subscription-Key",key);
xmlHttp.send( null );
return xmlHttp.responseText;
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
javascript ×3
http-headers ×2
api ×1
callback ×1
download ×1
http ×1
jquery ×1
json ×1
jsonp ×1