Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Proxy przez curl
Forum PHP.pl > Forum > PHP
Adi32
Witajcie.

Potrzebuję zrobić proxy phpowe na curlu, do którego będzie przesyłany request z danymi POST lub GET + 1 parametr (uri).
Request do proxy będzie wysyłany przez ajaxa, i zawierał będzie jakieś dane i metodę POST, GET, PUT, DELETE.

Teraz pytanie: jak zrobić phpowe proxy które jedyne co zrobi to prześle wszystkie dane niezmienione pod adres przekazany parametrem "uri"?
zulus
Najprościej użyć file_get_contents razem z stream_context_create bez curl wink.gif

Ajaxem ślesz request (jsonem lub klasycznym POST). PHP robi :

  1. $body = http_build_query($_POST['ajax_data']); // w ramach security wypadało by to sprawdzić
  2. echo file_get_contents('http://example.com', false, stream_context_create([
  3. 'http' => [
  4. 'method' => $_POST['method'], // lepiej sprawdzić ;), np dla post:
  5. 'header'=> "Content-type: application/x-www-form-urlencoded\r\n"
  6. . "Content-Length: " . strlen($body) . "\r\n",
  7. 'content' => $body
  8. ]
  9. ]));


Możesz też oczywiście puszczać JSONem jeśli Ci potrzeba, zmień tylko nagłówki i zawartość.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.