#postman #postman-collection-runner #postman-pre-request-script #postman-mocks
#postman #почтальон-коллекционер-посыльный #postman-pre-request-script #почтальон-издевается
Вопрос:
В Postman я хочу создать макет сервера, который содержит запрос с 3 различными примерами ответа, каждый из которых связан с HTTP-кодом, чтобы при трех последовательных вызовах этот запрос возвращал фиктивные ответы в заданном порядке. порядок. Точно:
- Первый вызов возвращает 202;
- Второй вызов возвращает 208;
- Третий вызов возвращает 200.
Из того, что я собрал (например, здесь: https://community.postman.com/t/how-to-select-which-example-is-used-by-a-mock-server-request/15679 ) макет ответа можно выбрать с помощью x-mock-response-id
заголовка. Это мне удалось сделать при отправке запроса от Postman (используя сценарий предварительного запроса), но он не работает, когда запрос вызывается из моего скрипта. Как я могу исправить это в Postman? Возможно ли это только?
На всякий случай указанный сценарий предварительного запроса:
nthCall = pm.environment.get("nthCall");
if ( nthCall == null || nthCall > 2 ) {
nthCall = 0;
}
const CALL_MOCK_ID_1 = "16343539-67f13a78-2a17-48d4-ba43-8489815b4eb0";
const CALL_MOCK_ID_2 = "16343539-5290f2e1-b81a-4d71-9548-2b06ff4f2461";
var callMockId = null;
if ( nthCall == 0 ) {
callMockId = CALL_MOCK_ID_1;
} else if ( nthCall == 1 ) {
callMockId = CALL_MOCK_ID_2;
}
pm.environment.set("callMockId", callMockId);
nthCall ;
pm.environment.set("nthCall", nthCall);
Бонусный вопрос
Кроме того, я задавался вопросом, есть ли способ указать в URL-адресе макетного запроса, что он должен принимать любой UUID, как в: https://abcdef01-2345-6789-abcd-ef0123456789.mock.pstmn.io/company/<uuid>
, чтобы, когда мой скрипт вызывает этот URL-адрес, он возвращал соответствующий пример независимо от UUID .
Комментарии:
1. вы должны указать заголовок, пожалуйста, добавьте скрипт, который вы пытаетесь вызвать в макет, убедитесь, что у вас установлен заголовок
2. Дело в том, что я пытаюсь не редактировать свой скрипт только для соответствия требованиям Postman. Если это необходимо, я, вероятно, в конечном итоге сделаю именно это, но мой вопрос здесь был именно в том, могу ли я заставить Postman сделать это, например, заставив его использовать мой скрипт перед отправкой ответа.
3. трудно понять, что вы пытаетесь здесь сделать, зачем вам нужен этот сценарий предварительного запроса? вы просто устанавливаете две переменные среды. Я не уверен, где он используется