Angularjs 如何传入HTTP头以从API发出请求?
使用Angular,我试图通过请求“App Id”和“App Key”传入HTTP头以从中获取数据 我尝试过这样设置标题:Angularjs 如何传入HTTP头以从API发出请求?,angularjs,api,http,Angularjs,Api,Http,使用Angular,我试图通过请求“App Id”和“App Key”传入HTTP头以从中获取数据 我尝试过这样设置标题: $http.defaults.headers.common["App-Id"] = '5a3d8b8d'; $http.defaults.headers.common["App-Key"] = '738e9aca62e7465446b7be8fe4219ffa'; 但我得到了飞行前无效的响应 我不认为这是对您问题的完整回答,但以下是我在项目中的内容: var app
$http.defaults.headers.common["App-Id"] = '5a3d8b8d';
$http.defaults.headers.common["App-Key"] = '738e9aca62e7465446b7be8fe4219ffa';
但我得到了飞行前无效的响应
我不认为这是对您问题的完整回答,但以下是我在项目中的内容:
var app = angular.module('app', ['ngRoute']);
app.config(function($routeProvider) {
// code for routes
});
app.config(['$httpProvider', function($httpProvider) {
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
}]);
这解决了我的CORS问题。如果您想制作另一种类型的标题,您可能可以。我不认为这是对您问题的完整回答,但以下是我在项目中的内容:
var app = angular.module('app', ['ngRoute']);
app.config(function($routeProvider) {
// code for routes
});
app.config(['$httpProvider', function($httpProvider) {
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
}]);
这解决了我的CORS问题。如果您想做另一种类型的头,您可能可以。飞行前错误与CORS有关。您可能希望查看rack COR,以便通过javascript启用跨站点api调用。这里有一个手动配置:飞行前错误与CORS有关。您可能希望查看rack COR,以便通过javascript启用跨站点api调用。这里有一个手动配置:根据每个请求向$http
请求添加头
要按每个请求向$http
请求添加头,请将它们添加到$http
配置对象的头
属性中
var xheaders = {};
xheaders["App-Id"] = '5a3d8b8d';
xheaders["App-Key"] = '738e9aca62e7465446b7be8fe4219ffa';
var xurl = 'https://uk.bookingbug.com/api/v1';
var configObj = { method: 'GET',
url: xurl,
headers: xheaders
};
$http(configObj)
.then(function onFulfilled(response) {
console.log(response);
vm.headers = response.config.headers;
vm.data = response.data
}).catch( function onRejection(errorResponse) {
console.log("Error: ", errorResponse.status);
console.log(errorResponse);
vm.error = errorResponse;
})
;
代码在飞行前出错,因为它使用了不正确的URL。正确的基本URL是https://uk.bookingbug.com/api/v1
支持应用程序Id
标题和COR
在每个请求的基础上,将头添加到$http
请求
要按每个请求向$http
请求添加头,请将它们添加到$http
配置对象的头
属性中
var xheaders = {};
xheaders["App-Id"] = '5a3d8b8d';
xheaders["App-Key"] = '738e9aca62e7465446b7be8fe4219ffa';
var xurl = 'https://uk.bookingbug.com/api/v1';
var configObj = { method: 'GET',
url: xurl,
headers: xheaders
};
$http(configObj)
.then(function onFulfilled(response) {
console.log(response);
vm.headers = response.config.headers;
vm.data = response.data
}).catch( function onRejection(errorResponse) {
console.log("Error: ", errorResponse.status);
console.log(errorResponse);
vm.error = errorResponse;
})
;
代码在飞行前出错,因为它使用了不正确的URL。正确的基本URL是https://uk.bookingbug.com/api/v1
支持应用程序Id
标题和COR
是的,最终我自己得到了。你怎么知道那是正确的URL?对我来说,这主要是尝试和错误。是的,最终我自己也做到了。你怎么知道那是正确的URL?对我来说,这主要是反复试验。斯奎尔:你是如何获得你的应用程序Id和应用程序密钥的?我无法在我的帐户中找到它…斯奎尔:你是如何获得你的应用程序Id和应用程序密钥的?我无法在我的帐户中找到它。。。