Problem jest taki, że odpowiedź od serwera jest wzbogacana o dodatkowe (niechciane) znaki, których nie widać. Np. powinien być string 95 znaków, a zwraca o 3 więcej:
Kod
string(98) "{"info":{"type":"success","code":"0902","description":"Message accepted, waiting to be sent."}}"
$ch_send = curl_init(); curl_setopt($ch_send, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch_send, CURLOPT_VERBOSE, true); curl_setopt($ch_send, CURLOPT_POST, true); curl_setopt($ch_send, CURLOPT_URL, $URL_API); curl_setopt($ch_send, CURLOPT_POSTFIELDS, $post); $response = curl_exec($ch_send); curl_close($ch_send);
Jaki może być tego powód oraz w jaki sposób pozbyć się tych znaków?
var_dump(OUTPUT); - zwraca wszystkie dane wyjściowe i podaje tym i ilość znaków (w tym przypadku string).
Te znaki są niewidoczne. Zauważyłem, że może to być coś z samym cURL'em lub serwerem. Może trzeba dodać jakiś parametr do cURL'a, ale do tego jeszcze nie doszedłem.
Może jakąś alternatywa dla cURL'a ktoś poleci potrafi w jaki sposób wytłumaczyć w jaki sposób to może się dziać?
Na serwerze z skryptem (cURL) jest NGNIX, a na serwerze z którym łączy się skrypt jest lighttpd - nie wiem czy ma to jakieś znaczenie.
