ReferenceError: выборка не определена - Почтальон

В Postman я запускаю произвольный запрос. Я поместил следующий код в файл Pre-req. скрипт или в скрипте тестов :

      fetch('https://jsonplaceholder.typicode.com/todos/3')
  .then(response => response.text())
  .then(responseBody => {
    console.log('The response body:');
    console.log(responseBody);
  });

Когда я нажимаю кнопку « Отправить» для выполнения запроса, я получаю ReferenceError: выборка не определена :

ReferenceError: выборка не определена

При поиске в Интернете я почти ничего не нашел об этом сообщении об ошибке в Postman. Postman - это не веб-браузер в обычном понимании этого слова, но наши дни почти каждый визвестный веб-браузер предлагает Fetch API .

Postman не реализует API Fetch?

1 ответ

Postman не реализует API Fetch?

Думаю, нет. Ближайшее соответствие команде - pm.sendRequest().
Но pm.sendRequest возвращает объект pm, а не Promise , по крайней мере, на данный момент.

Однако я нашел обходной путь. В приведенном ниже фрагменте кода я определяю pmFetch() функция, которая в целом должна делать то, что fetch() команда работает в обычном веб-браузере.

          pmFetch('https://jsonplaceholder.typicode.com/todos/3')
      .then(response => response.text())
      .then(responseBody => {
        console.log('The response body:');
        console.log(responseBody);
      });
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //
    function pmFetch (url) {
      return new Promise ((resolve, reject) => {
        pm.sendRequest(url, function (err, response) {
          if (err) reject(err);
          resolve(response);
        });
      });
    }

pmFetch имитирует Fetch API

Вот ссылка на коллекцию почтальонов, если вы хотите скачать, импортировать и запустить коллекцию.

Справка:

Другие вопросы по тегам