smsapi / smsapi-php-client

SMSAPI PHP client that allows you to send messages, manage Short URLs and administrate your SMSAPI account.
https://www.smsapi.pl
Other
64 stars 39 forks source link

+add http proxy #75

Closed arteq closed 5 years ago

arteq commented 7 years ago

Hej, może komuś się przyda. U mnie była potrzeba gadania z API zza firewalla, który blokuje cały ruch wychodzący, więc dodałem opcję obejścia przez serwer proxy. Dodatkowa funkcja wywołana na klasie Proxy: $proxy->setHttpProxy( 'proxy.localhost:8080' ); pozwala ustawić adres serwera pośredniczącego (https://github.com/arteq/smsapi-php-client/wiki/Example-HTTP-proxy), bez jej wywołania nic się nie zmienia.

Przy przetwarzaniu odpowiedzi zamiast list($hdr, $body) dałem explode (z max 3 parametrami zamiast 2, ponieważ sam serwer proxy czasem też może coś od siebie dołożyć), a następnie odwrócenie kolejności żeby w 0-elemencie mieć jsona z odpowiedzą, a w 1-szym nagłówki z API. Ewentualne dodatkowe nagłówki w 2-gim elemencie pochodzące z pośredniczącego proxy są ignorowane.

Kuzdo commented 6 years ago

@sudlik może warto dodać tę obsługę proxy? U mnie również jest potrzeba korzystania z proxy, a nie chcę modyfikować kodu ręcznie.

sudlik commented 5 years ago

W wersji v2 została dodana obsługa proxy: https://github.com/smsapi/smsapi-php-client#how-to-use-proxy-server