Я хочу установить базовую авторизацию в Postman, используя переменную окружения. Потому что у меня разные логин и пароль авторизации для разных вызовов API.
Я установил свой почтальон в соответствии с ниже:
На вкладке «Авторизация»: я выбрал Без аутентификации
На вкладке заголовка: ключ = Authorization
значение = Basic{{MyAuthorization}}
Вкладка в теле:
{
"UserName": "{{UserName}}",
"ServiceUrl": "{{ServiceUrl}}"
}
//which set it from the envitonment variable
На вкладке предварительного запроса:
// Require the crypto-js module
var CryptoJS = require("crypto-js");
// Parse the `username` and `password` environment variables
let credsParsed = CryptoJS.enc.Utf8.parse(`${pm.environment.get('admin')}:${pm.environment.get('admin')}`);
// Base64 encoded the parsed value
let credsEncoded = CryptoJS.enc.Base64.stringify(credsParsed);
// Set the valuse as an environment variable and use in the request
pm.environment.set('MyAuthorization', credsEncoded);
console.log(credsEncoded);
В тестовой вкладке:
var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("LoginInfoID", jsonData.First.LoginInfoID);
Тогда я отправил запрос и получил несанкционированный доступ.
После этого я установил тип аутентификации на базовую аутентификацию с именем пользователя и паролем.
он работает нормально, и я получил то, что хотел от ответа.