AntistressStore / cdek-sdk-v2

SDK для работы с API 2.0 CDEK
https://antistress.store
MIT License
21 stars 19 forks source link

Добавлена возможность изменить конфигурацию для http-клиента (Guzzle) #23

Closed jexme closed 1 year ago

AntistressStore commented 1 year ago

Я не вижу необходимости и потребности сообщества в подобных изменениях. Кроме этого, для всех пользователей sdk каждый раз будет идти дополнительный вызов функции array_merge, даже для тех, кто кому не нужно никаких дополнительных настроек. Вводится дополнительный параметр в функцию увеличивая ее сложность, кроме этого, что в этом массиве будет прокидываться это загадка. В массиве можно передать все что угодно.

jexme commented 1 year ago

Я не вижу необходимости и потребности сообщества в подобных изменениях. Кроме этого, для всех пользователей sdk каждый раз будет идти дополнительный вызов функции array_merge, даже для тех, кто кому не нужно никаких дополнительных настроек. Вводится дополнительный параметр в функцию увеличивая ее сложность, кроме этого, что в этом массиве будет прокидываться это загадка. В массиве можно передать все что угодно.

в вашем пакете не предусмотрены никакие системы логирования, в данном случае же можно хотя бы сделать middleware с логами

AntistressStore commented 1 year ago

Проблема в том, что в двух ваших коммитах вы не следуете логике самого sdk, а пытаетесь вклинить свою, причем в ядерные функции клиента и запроса. Я пока не сталкивался ни с одним запросом, кроме Вашего, на добавление логирования. Да и зона ответственности sdk находится в рамках взаимодействия с конкретным api СДЭК, а не в рамках фреймворка. Посмотрите, каким образом идет Cохранение токена. По схожей логике нужно действовать для добавления handler конфигурации. К сожалению, в новых версиях HTTP-клиент Guzzle теперь неизменяем, поэтому проверку и инициализацию этого параметра нужно будет проводить в самом начале.