Невозможно установить пользовательский заголовок в httpclient (приложение ionic 3 angular 5) - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь использовать API, для которого требуется ключ API 'Auth', я пытаюсь отправить ключ, используя httpHeaders, используя код ниже

getTest(){
let data = {'loginusertype':'12','loginuserid':'51','apitype':'1','start':'0','end':'20'};
let headers = new HttpHeaders({'Content-Type':'application/json; charset=utf-8','Auth':'593eb2c274d640a8798493bf340e08b6'});
this.http.post('http://www.mymediaxchange.com/api/serviceapi/v1/currentworks',data,{headers:headers})
.subscribe(
  (data) => console.log(data),
  (error) => console.log(error)
)  }

Но я не могу установить заголовки заголовковустановлены как показано ниже enter image description here

Вещи, которые я пробовал
1) Используемые перехватчики
2) Решение этого вопроса
Angular HttpClient didn 'отправьте заголовок
3) this.http.post('mymediaxchange.com/api/serviceapi/v1/currentworks',data,{headers: {'Auth': 'YourAuthorizationKey'}})

1 Ответ

0 голосов
/ 13 февраля 2019

Вы можете попробовать использовать службу перехватчика для этого.Для этого он добавляет заголовок авторизации к каждому запросу вашего приложения.

@Injectable()
export class JwtInterceptor implements HttpInterceptor {
  intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    // add authorization header with token
    const currentUser = JSON.parse(String(localStorage.getItem('currentUser')));
    if (currentUser && currentUser.Token) {
      request = request.clone({
        setHeaders: {
          Authorization: `${currentUser.Token}`
        }
      });
    }
    return next.handle(request);
  }
}

и использует его в разделе поставщиков вашего модуля.

providers: [
        {
          provide: HTTP_INTERCEPTORS,
          useClass: JwtInterceptor,
          multi: true
        }
      ]
...