Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: POST przez protokół https
Forum PHP.pl > Forum > PHP
chfast
Chcę wysłać dane za pomocą nagłówka HTTP metodą POST do pewnego serwera, z którym muszę komunikować się za pomocą protokołu https.

Próbowałem wykorzystać do tego parametr $context w fopen" title="Zobacz w manualu php" target="_manual, ale otrzymuję z serwera błąd 400: Bad request.
  1. <?php
  2.  
  3. $request = "dane=1";
  4.  
  5. $header = "Host: server.netrn";
  6. $header .= "Content-Type: application/x-www-form-urlencodedrn";
  7. $header .= "Content-Length: ".strlen($request)."rn";
  8. $header .= "Connection: closern";
  9.  
  10. $opts['http']['method'] = "POST";
  11. $opts['http']['header'] = $header;
  12. $opts['http']['content'] = $request;
  13.  
  14. $context = stream_context_create( $opts );
  15. fopen( "https://server.net/index.php", false, $context );
  16.  
  17. ?>

Kod
HTTP request failed! HTTP/1.1 400 Bad Request


Próbowałem też wysłać podobny nagłówek za pomocą fsockopen" title="Zobacz w manualu php" target="_manual, ale efekt jest taki sam.
bela
http://pl2.php.net/stream przykład 2
hwao
http://hwao.be/code/http/

  1. <?php
  2. $httpRequest = new httpRequest( 'http://www.php.net/index.php' );
  3. // $httpRequest->proxy( '10.1.1.1', 80 ); // opcjonalne
  4. $httpRequest->cookie( array( 'nazwa' => 'value' ) ); // dane cookie
  5. $httpRequest->post( array( 'hwao' => array( 'lol', 'ek' ) ) ); // dane post
  6. $httpRequest->get( array( 'icos' => 'nono' ) ); // dane get
  7.  
  8. $httpResponse = new httpResponse( $httpRequest->send() );
  9. $cookie = $httpResponse->getCookie(); // ciastka wyslane przez serwer
  10.  
  11. echo '<pre>';
  12. print_r( $cookie );
  13. echo '<hr />';
  14. print_r( $httpResponse->getHeader() );
  15. echo '</pre><hr />';
  16. echo $httpResponse->getDocument(); 
  17. ?>
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.