Как передать Mat-Select Value в заголовок в API Call - PullRequest
0 голосов
/ 13 марта 2020

У меня есть API, который требует код страны в заголовке вместе с токеном авторизации и предъявителем. Я могу получить значение mat-select в моем файле компонента. Однако мой заголовок и токен API устанавливаются в служебном файле. Может ли кто-нибудь помочь мне выяснить, как передать значение mat-select из компонента в служебный файл?

Сейчас я жестко кодирую значение страны как 'au', но я хочу, чтобы оно устанавливалось согласно Значение раскрывающегося списка mat-select.

Код для получения значения выбора mat в файле компонентов:

onCountrySelection() {
console.log(this.countryValue);
sessionStorage.setItem('countryCode', this.countryValue);
}

API в файле класса обслуживания;

uploadConfig(templateName, JsonBody) {
const header = new HttpHeaders().set(
  'Authorization',
  'Bearer ' + sessionStorage.getItem('token'),
).set(
  'country',
  'au'
);
return this.httpClient.post(
  this.localUrl + '/pattern/' + templateName + '/flow', JsonBody,
  { headers: header }
);
}

1 Ответ

1 голос
/ 13 марта 2020

Попробуйте добавить дополнительный параметр к своей подписи метода API:

uploadConfig(templateName, JsonBody, countryCode) {

    const header = new HttpHeaders().set(
      'Authorization', 'Bearer ' + sessionStorage.getItem('token'),
    ).set(
      'country', countryCode
    );
    return this.httpClient.post(
        this.localUrl + '/pattern/' + templateName + '/flow', JsonBody, { headers: header }
        );
}

А затем, когда вы вызываете сервис, просто отправьте countryValue:

uploadConfig(,,this.countryValue);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...