我尝试向API发送简单的HTTP GET请求。 API通过查看x-access-token
标题来验证请求。
但是,即使我在HTTP客户端上设置了标头,也不会发送标头值。
这是我的DAL
import {HttpClient} from 'aurelia-http-client';
export class BarChartDAL {
constructor() {
this.token = '';
}
getBarchartData() {
console.log('this.token: ', this.token);
var client = new HttpClient()
.configure(config => {
config.withHeader('x-access-token', this.token);
config.withHeader('Content-Type', 'application/json');
});
return client.get('http://127.0.0.1:1337/colors')
.then(data => {
console.log('got datapoints from server: ', data.response);
return (JSON.parse(data.response));
})
.catch(err => {
console.log('failed to get a response');
return false;
});
}
setToken(token) {
this.token = token;
}
}
但是,在服务器上,请求的标题只显示
request.headers { host: '127.0.0.1:1337',
connection: 'keep-alive',
'access-control-request-method': 'GET',
origin: 'http://localhost:9000',
'user-agent': '',
'access-control-request-headers': 'content-type, x-access-token',
accept: '*/*',
referer: 'http://localhost:9000/',
'accept-encoding': 'gzip, deflate, sdch, br',
'accept-language': 'en-US,en;q=0.8'
}
如您所见,没有x-access-token header
我有一个工作示例here,在它发送HTTP GET的意义上工作正常,如果我在服务器上删除身份验证,数据将返回到客户端。