拦截器服务
.factory('sessionInjector', function ($rootScope) {
// Service logic
var sessionInjector = {
request: function(config) {
if ($rootScope.sysuser) {
config.headers['token'] = $rootScope.sysuser.token;
}
return config;
}
};
return sessionInjector;
});
结果:
我写了个拦截器headers注入token,但是怎么注入了heads的Access-Control-Request-Headers的呢?
注入拦截器是这样写的:
$httpProvider.interceptors.push('sessionInjector');
应该没错吧?不知道哪里出问题了
后面测试了下不用拦截器直接注入,和在单个请求中加header都一样跑去了heads的Access-Control-Request-Headers
阿神2017-05-15 17:09:10
액세스 제어 요청 헤더
프리플라이트 요청 시 이 헤더 정보를 사용하여 실제 요청에 포함될 사용자 정의 헤더 정보를 서버에 알려주십시오. 여러 개가 있는 경우 쉼표로 구분할 수 있습니다.
액세스 제어 요청 헤더: <필드 이름>[, <필드 이름>]*
黄舟2017-05-15 17:09:10
Google에서 검색한 결과 다른 사람들도 같은 문제가 발생했다는 것을 알았습니다. 누군가 답변을 주셨는데요, 의외로 서버와 관련이 있는 것 같습니다. Angular가 원래의 교차 요청 방식을 사용하고 있어서 서버가 이를 지원하지 않는다고 합니다. http-server0.90에서 실행 중인데 이 문제가 발생합니다. 모든 파일을 tomcat에 복사하면 문제가 사라질 것입니다. 다른 서버 소프트웨어를 사용하면 해결될 수도 있습니다.