Как установить переменную среды из тела ответа в Почтальоне, где соответствующее ключевое слово переносится - PullRequest
0 голосов
/ 22 октября 2018

Я пытаюсь установить переменную окружения, захватив узел из тела ответа API, где узел содержит два дефисных слова.

Мой сценарий - postman.setEnvironmentVariable("Token", jsonData.access-token); - Это продолжает возвращаться ReferenceError: токен не определен

Узел в теле ответа - - {"access-token": "<token>"}

Я пытался использовать этот скрипт - postman.setEnvironmentVariable("Token", jsonData.access/-/token/); - Этот скрипт устанавливает ключевое слово "Токен "как ключ среды, но не фиксирует значение фактического токена из тела ответа.

Кто-нибудь знает решение этой проблемы?

1 Ответ

0 голосов
/ 22 октября 2018

ReferenceError: токен не определен

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

почтальон.setEnvironmentVariable ("Token", jsonData.access-token);

Приведенный выше оператор имеет недопустимый синтаксис JavaScript, поскольку имена переменных / объектов не могут содержать дефис.Подробнее о допустимых именах здесь: https://mathiasbynens.be/notes/javascript-identifiers

Это можно исправить с помощью записи в квадратных скобках следующим образом:

pm.environment.set("Token", jsonData["access-token"]);

Обратите внимание, что семейство функций postman.* устарело и имеетбыли заменены их pm.* эквивалентами.Более подробную информацию можно найти здесь: https://www.getpostman.com/docs/v6/postman/scripts/postman_sandbox_api_reference

...