Как получить запросить параметры в Postman?

Я пишу тесты для почтальона, который в целом работает довольно легко. Однако теперь я хочу получить доступ к некоторым данным запроса, а точнее к параметру запроса. Вы можете получить доступ к URL-адресу запроса через "запрос.url " объект, который возвращает строку. Есть ли простой способ в Postman проанализировать эту строку URL для доступа к параметрам запроса?

6 ответов


Если вы хотите извлечь строку запроса в кодировке URL-адреса без разбора его. Вот как это сделать:

pm.request.url.getQueryString() // example output: foo=1&bar=2&baz=3

Я искал доступ к запрос params для написания тестов (в POSTMAN). Я закончил разбором request.url который доступен в POSTMAN.

const paramsString = request.url.split('?')[1];
const eachParamArray = paramsString.split('&');
let params = {};
eachParamArray.forEach((param) => {
    const key = param.split('=')[0];
    const value = param.split('=')[1];
    Object.assign(params, {[key]: value});
});
console.log(params); // this is object with request params as key value pairs

POSTMAN CLIENT CONSOLE RESPONSE

edit: добавлено Github Gist


на pm.request.url.query.all() array содержит все параметры запроса как объекты. Чтобы получить параметры в виде словаря, вы можете использовать:

var query = {};
pm.request.url.query.all().forEach((param) => { query[param.key] = param.value});

Я не думаю, что есть какое-либо свойство из коробки, доступное в объекте запроса Postman для параметра(ов) запроса.

В настоящее время четыре свойства связаны с объектом 'Request':

data {object} - это словарь данных формы для запроса. (запрос.data ["key"]== "value")заголовки {object} - это словарь заголовков для запроса (request.headers ["key"]== "value")метод {string} - GET / POST / PUT так далее.
url {string} - url-адрес запроса.

источник:https://www.getpostman.com/docs/sandbox


pm.request.url.query возвращает PropertyList of QueryParam объекты. Вы можете получить один параметр pm.request.url.query.get() или pm.request.url.query.all() например. См.PropertyList методы.


посмотреть в консоли делаем :

console.log(request);

он покажет вам все, что вы можете получить от запроса. Затем вы получите доступ к различным параметрам с помощью request., т. просьба.имя, если вы хотите имя теста. Если вам нужен определенный элемент в url-адресе, боюсь, вам придется использовать некоторое кодирование для его получения (извините, я новичок в javascript)

надеюсь, что это помогает

Александр