/ / Prečo CURL vyberie polovicu adresy URL pre požiadavku? - php, zvlnenie

Prečo CURL vyberie polovicu URL pre žiadosť? - php, curl

Chyba, ktorú dáva nasledujúci kód

HTTP / 1.0 400 Chybná požiadavka: Neplatná verzia HTTP v riadku požiadavky. Riadok: GET / http / send-message? To = 233445566 & message = Some String

    $curl = curl_init();
curl_setopt_array($curl,
array( CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HEADER => 1,
CURLOPT_TIMEOUT => 4,
CURLOPT_VERBOSE => 1,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_URL => "http://GATEWAY:9710/http/send-message?to=".$mobileNumber."&message=".$message

));

Dajte mi vedieť o čo ide?

odpovede:

1 pre odpoveď č. 1

To nie je CURL, takto funguje HTTP - doménová časť adresy URL sa odovzdáva v doméne Host: hlavička, nie požiadavka. Samotná žiadosť sa začína prvou / po doméne.

Zdá sa, že chyba, ktorú sa vám vracia späť, je spôsobená skutočnosťou, že explicitne nastavujete protokol HTTP 1.1 a server je serverom 1.0.

editovať: Zdá sa, že váš problém bol vyriešený v komentároch vyššie. Všeobecne je urlencoding vecí, ktoré idete vložiť do URL, užitočné. :)