JMeter - зачем отправлять заголовок User-Agent по умолчанию - PullRequest
1 голос
/ 10 ноября 2019

При отправке HTTP-запроса в JMeter добавляется заголовок User-Agent, например:

User-Agent: Apache-HttpClient / 4.5.10 (Java / 1.8.0_191) Тип содержимого:text / plain Хост: api.example.com

Я не нашел никакой причины в документации,

Но есть ссылка на его существование в JMeter docs

В этом примере мы создали план тестирования, который сообщает JMeter о необходимости переопределить заголовок запроса «Пользователь-агент» по умолчанию и использовать вместо него определенную строку агента Internet Explorer.

При переходе на Java в Advanced -> реализации он не отправляет дополнительные заголовки, поэтому он связан с HTTPClient4

HttpClient отправляет заголовок User-Agent по умолчанию с каждым запросом

Но в чем причина этого?

Также, когда я пытаюсь удалить его, добавив User-Agent с пустым значением в Header Manager

Тем не менее, он отправляет User-Agent с пустым значением, есть ли способ избежать отправки User-Заголовок агента?

1 Ответ

2 голосов
/ 11 ноября 2019

Какая документация? Документация JMeter не должна включать в себя исчерпывающую документацию по базовой Java SDK (для реализации Java) или Apache HttpComponents для HttpClient4 реализации.

Для последнего "объяснение" находится внутри HttpClientBuilder class

if (userAgentCopy == null) {
    if (systemProperties) {
        userAgentCopy = System.getProperty("http.agent");
    }
    if (userAgentCopy == null && !defaultUserAgentDisabled) { 
        userAgentCopy = VersionInfo.getUserAgent("Apache-HttpClient",
                "org.apache.http.client", getClass());
    }
}

Если нет заголовка User-Agent , предоставленноголежащая в основе библиотека Apache HttpComponents неявно добавляет заголовок по умолчанию, поскольку клиенты ДОЛЖНЫ отправлять строку User-Agent в соответствии с RFC 2616 .

Хороший тест JMeter должен представлять реальный браузер как можно ближе , поэтому, если вы видите эту строку User-Agent по умолчанию, это означает, что ваши настройки JMeter неверны, поэтому результаты вашего теста не будутбыть надежнымПроверить

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...