Я пытаюсь настроить предварительный запрос почтальона на получение токена OAuth перед каждым запросом к своему сервису.
Я пытался следовать различным примерам и руководствам, связанным с этим, и каждый из них кажется довольно простым, хотя у меня все еще есть проблемы с моим сценарием, так как сценарий предварительного запроса завершился неудачей.
Боюсь, это как-то связано с тем, что конечная точка, которую мне нужно вызвать для получения токена, находится по протоколу http, а не по https, так как в консоли Postman я всегда получаю 2 отдельных запроса на один и тот же URL один на https и один на http.
Вот мой сценарий предварительного запроса
pm.expect(pm.environment.has('host')).to.be.true;
pm.expect(pm.environment.has('client_id')).to.be.true;
pm.expect(pm.environment.has('client_secret')).to.be.true;
pm.expect(pm.environment.has('username')).to.be.true;
pm.expect(pm.environment.has('password')).to.be.true;
var options = { method: 'POST',
url: 'http://' + pm.environment.get("host") + '/api/oauth/token',
headers:
{
Authorization: 'Basic '+btoa(pm.environment.get("client_id")+':'+pm.environment.get("client_secret")),
'Content-Type': 'application/x-www-form-urlencoded'
},
form:
{
grant_type: 'password',
username: pm.environment.get('username'),
password: pm.environment.get('password'),
}
};
pm.sendRequest(options, function(err, response) {
console.log(response.json())
});
И вот что я вижу в своей консоли почтальона
Как видно из рисунка, первый запрос не выполняется, а второй генерирует HTTP-ответ 401.
Если я запускаю тот же запрос вне сценария предварительного запроса, что и "обычный" запрос почтальона, на http все работает нормально, но на https я получаю сообщение об ошибке, так как запрос даже не выполняется
Как я могу заставить мой скрипт предварительного запроса работать нормально?