>
import {Component, OnInit} from '@angular/core';
import {HttpClient, HttpErrorResponse, HttpResponse} from '@angular/common/http';
@Component({
  selector: 'git',
  templateUrl: './git.component.html'
})
export class GitComponent implements OnInit {
  constructor(private http: HttpClient) {
  }
  ngOnInit(): void {
    const headers = {authorization: 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJzYXNobyIsImF1dGgiOiJST0xFX1VTRVIiLCJleHAiOjE1MjQwODcyMzJ9.MUv5RgI9LxQyrrCfjfX8HR2-XiQmz4vjLqH7V_0Du7VFLC0WrK_y3FfeNoT2Nj_uguIK2ss7jv-LNiHuCGtz4A'};
    this.http.get('http://localhost:8080/links/all', headers)
      .subscribe((e) => {
        console.log(e);
      }, (err: HttpErrorResponse) => {
        console.log(err);
      });
  }
}

http.get 에서  인증을 어떻게 설정합니까? const headers 에 저장된 베어러 토큰을 사용하고 싶습니다 . 그게 다야. 감사합니다

편집 : 인터셉터가 아닌 수동으로 설정하는 방법을 알고 싶었습니다. 인터셉터가있는 모든 자습서이므로 이해할 수 없었습니다.


  • 답변 # 1

    이것을 시도하십시오 :

    import {Component, OnInit} from '@angular/core';
    import {HttpClient, HttpErrorResponse, HttpResponse} from '@angular/common/http';
    @Component({
      selector: 'git',
      templateUrl: './git.component.html'
    })
    export class GitComponent implements OnInit {
      constructor(private http: HttpClient) {
      }
      ngOnInit(): void {
        const headers =  'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJzYXNobyIsImF1dGgiOiJST0xFX1VTRVIiLCJleHAiOjE1MjQwODcyMzJ9.MUv5RgI9LxQyrrCfjfX8HR2-XiQmz4vjLqH7V_0Du7VFLC0WrK_y3FfeNoT2Nj_uguIK2ss7jv-LNiHuCGtz4A';
        this.http.get('http://localhost:8080/links/all', {
          headers: new HttpHeaders().set('Authorization', headers )
        })
          .subscribe((e) => {
            console.log(e);
          }, (err: HttpErrorResponse) => {
            console.log(err);
          });
      }
    }
    
    

  • 답변 # 2

    다음과 같이 해보십시오 :

    let authorization: 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJzYXNobyIsImF1dGgiOiJST0xFX1VTRVIiLCJleHAiOjE1MjQwODcyMzJ9.MUv5RgI9LxQyrrCfjfX8HR2-XiQmz4vjLqH7V_0Du7VFLC0WrK_y3FfeNoT2Nj_uguIK2ss7jv-LNiHuCGtz4A'
     let header: Headers = new Headers;
            header.set('authorization', this.authorization);
            this.http.get('http://localhost:8080/links/all', 
        {headers: header}).subscribe((e) => {
        console.log(e);
      }, (err: HttpErrorResponse) => {
        console.log(err);
      });
    
    

  • 답변 # 3

    모든 발신 요청에 토큰을 추가하기 위해 Angular http 인터셉터를 확인할 수 있습니다. https://medium.com/@ryanchenkie_40935/angular-authentication-using-the-http-client-and-http-interceptors-2f9d1540eb8

  • 답변 # 4

    헤더 객체내부다른 개체 get(....., { headers } )

    두 번째 인수는 일반 options 입니다   headers 에 대한 객체 , 요청 params 등을 참조하십시오. https://angular.io/api/common/http/HttpClient

    참조

    (다른 답변과 달리 HttpHeaders 에서 헤더를 감쌀 필요가 없습니다.  허용되는 유형이 오버로드되었으므로 객체))

  • 이전 macOS의 바로 가기 넷빈 (Apple Keyboard)
  • 다음 Laravel 55에서 저장 프로 시저를 실행하는 방법은 무엇입니까?