Я использую Charles' Rewrite Tool, чтобы заменить 200 ответов на 400, чтобы проверить неудачные вызовы API. Однако перезапись срабатывает по запросу Options
. Я хотел бы, чтобы он срабатывал только для запросов Get
или Post
и разрешал запросы Options
. Возможно ли это с помощью Чарльза?
Как использовать инструмент перезаписи Чарльза только для определенных методов?
Ответы (4)
Я думаю, что у Чарльза нет этой опции, что очень жаль, потому что кажется, что ее легко реализовать, и она открыла бы двери в мир API.
Я бы посоветовал вам обратиться к Карлу (автору и главному разработчику) за этой новой функцией по contact раздел сайта.
Мы смогли обойти эту проблему, предполагая, что OPTIONS всегда будет возвращать пустое тело.
Приведенные ниже значения регулярного выражения будут соответствовать GET (поскольку у него есть тело ответа) и не будут соответствовать OPTIONS (поскольку у него нет тела ответа).
\{[\S\s]*\}
or
\[[\S\s]*\]
У нас точно такая же потребность имитировать ответы API. Поскольку инструмент перезаписи не поддерживает эту функцию, мы установили точки останова на ответы, которые мы хотим имитировать, как только будет достигнута точка останова, мы изменим ответ на то, что мы хотим. Это работает, но далеко от идеала.
К сожалению, у Чарльза нет этой функции для фильтрации того, какой запрос имеет определенный метод HTTP.
Это не прямой ответ, но вы можете получить его с помощью инструмента Scripting из Проксимен
function onResponse(context, url, request, response) {
// Update status Code
response.statusCode = 500;
// Done
return response;
}
Вот фрагмент кода, который вы можете сделать с помощью JS Code.
Отказ от ответственности: я создатель Proxyman. Поскольку есть много людей, которые борются с этой проблемой, надеюсь, инструмент сценариев может вам помочь.