Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将令牌从Angular2发送到java筛选器时出现问题_Java_Spring_Angular_Http Headers_Angular2 Services - Fatal编程技术网

将令牌从Angular2发送到java筛选器时出现问题

将令牌从Angular2发送到java筛选器时出现问题,java,spring,angular,http-headers,angular2-services,Java,Spring,Angular,Http Headers,Angular2 Services,我正在尝试通过服务HTTP的GET方法发送令牌,但请求头中没有auth令牌的值(存储在浏览器localStorage中用于身份验证控制的令牌) 以下是请求的标题: Accept:*/* Accept-Encoding:gzip, deflate, sdch, br Accept-Language:pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4 Access-Control-Request-Headers:auth-token, content-type Access-Co

我正在尝试通过服务HTTP的GET方法发送令牌,但请求头中没有auth令牌的值(存储在浏览器localStorage中用于身份验证控制的令牌)

以下是请求的标题:

Accept:*/* Accept-Encoding:gzip, deflate, sdch, br Accept-Language:pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4 Access-Control-Request-Headers:auth-token, content-type Access-Control-Request-Method:GET Connection:keep-alive Host:localhost:7005 Origin:http://localhost:4200 Referer:http://localhost:4200/ User-Agent:Mozilla/5.0 (Windows NT
6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
我需要在Access Control Request Headers参数之外对令牌进行身份验证,才能访问身份验证令牌值:

下面是我的代码(2)

代码:

    export class BaseProvider {
        protected static HOST: string = 'http://localhost:7005/'
        protected static BASE_API: string = 'context';

         protected headers = new Headers({
            'Content-Type': 'application/json',
            'auth-token': localStorage.getItem('user-token')
        });

     protected options = new RequestOptions({ headers: this.headers });

     protected static getBaseAPI(): string {
        return this.HOST + this.BASE_API;
    }
}

@Injectable()
export class MyService extends BaseProvider {

  constructor(private http: Http) {
    super();
  }

  public findByName(obj: MyModel): Observable<Array<MyModel>> {
    let params: URLSearchParams = new URLSearchParams();
    params.set('name', obj.name);
    this.options.search = params;

    return this.http.get(BaseProvider.getBaseAPI() + myUrl, this.options)
      .map((res: Response) => res.json()
      ).catch((error: any) => Observable.throw(error.json().error || 'Error!'));
  }
}
Java代码的“authHeaderVal”变量没有使用令牌填充,因为“auth令牌”为空

如果没有LoginFilter类,请求将按如下方式到达:

Accept:application/json, text/plain, */*
Accept-Encoding:gzip, deflate, sdch, br
Accept-Language:pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4
auth-token:eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJkOTkzOWE0NS05Mzg5LTQ1MGItODE2Yy0yMjE1OWJhODdjZDMiLCJzdWIiOiJnYWJyaWVsIiwicm9sZSI6IjEiLCJpYXQiOjE0ODk2OTk5MjUsImV4cCI6MTQ4OTc4NjMyNX0.NdqdinX7S2mzO9wGVBw-JoUKQ7G2TQxQyQ3QrFg6Ckwc9A9Z63iw6R1JOPQ5ZO1yWpVPVvy_NS-wBqNRK03IiA
Cache-Control:no-cache
Connection:keep-alive
Content-Type:application/json
Host:localhost:7005
Origin:http://localhost:4200
Pragma:no-cache
Referer:http://localhost:4200/
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36

我需要请求在启动时到达筛选器。

在引发异常之前,是否可以打印请求的所有标头?是,但身份验证令牌密钥位于访问控制请求标头内,我无法获取值。
Accept:application/json, text/plain, */*
Accept-Encoding:gzip, deflate, sdch, br
Accept-Language:pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4
auth-token:eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJkOTkzOWE0NS05Mzg5LTQ1MGItODE2Yy0yMjE1OWJhODdjZDMiLCJzdWIiOiJnYWJyaWVsIiwicm9sZSI6IjEiLCJpYXQiOjE0ODk2OTk5MjUsImV4cCI6MTQ4OTc4NjMyNX0.NdqdinX7S2mzO9wGVBw-JoUKQ7G2TQxQyQ3QrFg6Ckwc9A9Z63iw6R1JOPQ5ZO1yWpVPVvy_NS-wBqNRK03IiA
Cache-Control:no-cache
Connection:keep-alive
Content-Type:application/json
Host:localhost:7005
Origin:http://localhost:4200
Pragma:no-cache
Referer:http://localhost:4200/
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36