Добавьте заголовок к каждому запросу в Почтальоне в сценарии перед запросом - PullRequest
0 голосов
/ 02 июля 2018

Я хочу автоматически добавлять заголовок к каждому запросу во всей моей коллекции, используя этот сценарий предварительного запроса:

pm.request.headers.add({
    'key': "myvar",
    'value': pm.environment.get("myvar")    
});

myvar - это переменная окружения.

К сожалению, это не работает. Я что-то пропустил?

Ответы [ 5 ]

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

Начиная с Почтальон v7.0.9 , теперь это возможно, добавив сценарий предварительного запроса в коллекцию.

Для этого перейдите в свою коллекцию, щелкните ее правой кнопкой мыши, выберите «Редактировать» и перейдите на вкладку Pre-request Scripts, где вы можете добавить свой фрагмент, т. Е .:

.
pm.request.headers.add({
  key: 'X-HEADER-TEST',
  value: '1'
});
0 голосов
/ 19 июня 2019

Я думаю, что вы можете попробовать это так:

  // Add or update an existing header

 pm.request.headers.upsert({
 'key': "myvar",
 'value': pm.environment.get("myvar") 
 });

Это было обновлено в приложении Почтальон (v7.0.9). Для получения дополнительной ссылки вы можете обратиться к: https://github.com/postmanlabs/postman-app-support/issues/1947

0 голосов
/ 18 сентября 2018

Это скопировано отсюда, но у меня это сработало

https://gist.github.com/madebysid/b57985b0649d3407a7aa9de1bd327990

pm.sendRequest({
    url: "https://mydomain/ers/config/endpoint",
    method: 'GET',
    header: {
        'content-type': 'application/json',
        'accept': 'application/json',
        //'x-site-code': pm.environment.get("x-site-code")
        'X-CSRF-TOKEN': 'fetch'
    },
    body: {
        mode: 'raw'//,
        raw: JSON.stringify({ email: pm.environment.get("email"), password: pm.environment.get("password") })
    }
}, function (err, res) {

    pm.environment.set("X-CSRF-TOKEN", "Bearer " + res.json().token);
});
0 голосов
/ 01 марта 2019

В тестовом разделе входа в систему используйте этот скрипт для запоминания токена в среде

var jsonData = JSON.parse(responseBody);

tests["Body contains result"] = responseBody.has("result");

var result = jsonData.result

tests["result contains user"] = result.user !== null
var user = result.user
tests["result contains token"] = result.token !== null
var token = result.token
var accessToken = token.accessToken
var refreshToken = token.refreshToken

postman.setEnvironmentVariable("accessToken", accessToken);
postman.setEnvironmentVariable("refreshToken", refreshToken);

в каждом вызове, для которого требуется токен, используйте токен, как этот, в разделе заголовка

Authorization = Bearer {{accessToken}}
0 голосов
/ 03 июля 2018

Похоже, pm.request.headers.add() в настоящее время не обновляет отправляемый запрос. Он был помечен как запрос функции: https://github.com/postmanlabs/postman-app-support/issues/4631

Возможно, вы уже знаете, что вы можете создать предустановленные заголовки (из выпадающего списка Presets), чтобы немного упростить настройку заголовков. И есть несколько вариантов в настройках, чтобы включить определенные заголовки. Но эти предложения не добавляют автоматически заголовок к каждому запросу во всей коллекции, как вы спрашиваете.

UPDATE: Почтальон добавил поддержку для этого в приложении Почтальон (v7.0.9) .

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