[英]How do i get the GET parameter in Restangular interceptor
I am stuck at one thing that can i get the custom parameters form the restangular interceptor 我陷入一件事,我可以从矩形拦截器获取自定义参数
here is the requesting with the restangular 这是与矩形的要求
<pre>
var getSaveMetricsSelectOptions = function(organizationId, metricSetId) {
return Restangular.one('metricsets', organizationId)
.one('metricset', metricSetId)
.get({skipAuth:true})
.then(function(response) {
return response.data;
}, handleError);
};
</pre>
here is one parmeter
name skipAuth i want to get in the interceptor. 这是一个我想进入拦截器的
parmeter
名称skipAuth 。 as i don't want to pass the parameter through one("skipAuth",true) . 因为我不想通过one(“ skipAuth”,true)传递参数。 i don't want to send this skipAuth parameter to the server, just want to check at interceptor.
我不想将此skipAuth参数发送到服务器,只想检查拦截器。
here is the my interceptor code 这是我的拦截器代码
<pre>Restangular.addRequestInterceptor(
function(elem, operation, what,url) {
Restangular.setBaseUrl(API_CONFIG.url);
//Add token to all the URLs except 'client/login'
$log.log(elem, operation, what, url);
if (what !== 'client/login') {
//check for token in cookie and set it in URL
$log.log($cookies.get('token'));
var token = $cookies.get('token');
if (angular.isDefined(token)) {
Restangular.setRequestSuffix('/' + token);
} else {
//Client login issue - token not found
$log.log('Client login issue - token not found');
}
//Check for JWT Token and add it in Authorization Header
if(!elem.skipAuth) {
var jwt_token = authService.getJwtToken();
if (jwt_token) {
var defaultHeaders = {Authorization: 'Bearer ' + jwt_token};
Restangular.setDefaultHeaders(defaultHeaders);
}
}
}
return elem;
});
</pre>
Use Full interceptor 使用完全拦截器
Restangular.addFullRequestInterceptor(function(elem, operation, what, url, headers, params, httpConfig) {
Restangular.setBaseUrl(API_CONFIG.url);
//Add token to all the URLs except 'client/login'
$log.log(elem, operation, what, params);
if (what !== 'client/login') {
//check for token in cookie and set it in URL
$log.log($cookies.get('token'));
var token = $cookies.get('token');
if (angular.isDefined(token)) {
Restangular.setRequestSuffix('/' + token);
} else {
//Client login issue - token not found
$log.log('Client login issue - token not found');
}
//Check for JWT Token and add it in Authorization Header
if (!params.skipAuth) {
if (!elem.skipAuth) {
var jwt_token = authService.getJwtToken();
if (jwt_token) {
var defaultHeaders = { Authorization: 'Bearer ' + jwt_token };
Restangular.setDefaultHeaders(defaultHeaders);
}
}
}
}
return {
element: elem,
headers: headers,
httpConfig: httpConfig
};
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.