Skip to content

Conversation

wrong-about-everything
Copy link

Добрый день.
Возникла такая необходимость -- логирование заголовков курлового запроса. Подумал, почему бы не записывать их в HttpRequest.
Выношу предложение на суд сообщества.

@AlexeyDsov
Copy link
Member

CurlHttpClient::multiSend() не согласен с таким вариантом

@AlexeyDsov
Copy link
Member

хотя я кажется не о том подумал. а что тут вообще в данном случае имеется ввиду под логированием и что происходит?

@AlexeyDsov
Copy link
Member

И еще подумал и дополню, что не нравится:

  • не нравится что изменяется бъект HttpRequest, все текущие коды к этомй не готовы
  • не нравится что в конструкторе создается HeaderParser, и один единственный всегда работает - на скорый взгляд выглядит так что если делать множественную отправку запросов (или несколько подряд) то хедеры в нем будут накапливаться.

Мой вариант решения:
Сделать приватную переменную headerParsers = array() и при каждой отправке запроса создавать свой HeaderParser и добавлять его по ключу от реквеста (CurlHttpClient::getRequestKey(HttpRequest). Получать HeaderParser методом (getRequestHeaderParser) и реализовать его по аналогии с методом getResponse(HttpRequest), а в случае если HttpRequest не передан - возвращать последний HeaderParser.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants