Как установить для свойства Postman's Authorization в заголовках через переменные значение Null / None? - PullRequest
0 голосов
/ 03 июля 2019

В Почтальоне я хочу переключаться на разные конечные точки API через функцию среды. Мой первый API использует Basic Auth, второй API не использует Auth.

Я установил заголовок Authorization с переменной {{auth}} в качестве значения во всех моих запросах. В среде {{auth}} установлено значение

  • Basic xxx (для первого API)
  • ноль (для второго API)

Мой запрос работает для первого API, но не для второго. Очевидно, что Почтальон пытается авторизоваться в последнем случае и дает мне 401 (несанкционированный) ответ. Таким образом, я должен деактивировать заголовок авторизации вручную всякий раз, когда я хочу сделать запрос ко второму API.

В Robot Framework (использует модуль запросов Python под капотом) я могу передать {"Authorization": "Basic xxx} к первому API и {"Authorization": null} ко второму API, который прекрасно работает.

Возможно ли это с почтальоном? Если да - как?

1 Ответ

0 голосов
/ 04 июля 2019

"Мой первый API использует обычную аутентификацию, мой второй API не использует никакой аутентификации."

В этом случае вы можете использовать переменную для ключа заголовка HTTP, сделайте его "Authorization" для первого API и сделать как undefined для второго - когда он равен undefined, сервер не получит этот HTTP-заголовок.

enter image description here

Сценарий предварительного запроса будет выглядеть следующим образом:

// For first API
pm.globals.set('AuthorizationKey', 'Authorization');
// For second API
pm.globals.set('AuthorizationKey', undefined);

pm.globals.set('AuthorizationValue', 'Basic xxxxxx');
...