Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTTP] Zapytanie HTTP z serwera http
chmiello96
post 8.12.2012, 16:45:33
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 18.03.2012

Ostrzeżenie: (0%)
-----


Potrzebuję wykonać zapytanie http z serwera php do innego serwera.
Opiszę swój problem.
Jest strona bez API, ale jeśli udałoby się tam zalogować, mógłbym pobrać potrzebne mi dane.

Muszę wysłać $_POST['login'] i $_POST['password'] - zalogować się, a następnie obrobić uzyskane dane.

Czy jest taka możliwość ?
Byłbym wdzięczny za pomoc, bądź podlinkowanie czegoś smile.gif
Go to the top of the page
+Quote Post
daniel1302
post 8.12.2012, 17:00:21
Post #2





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


http://www.php.pl/Wortal/Artykuly/PHP/Bibl...i-protokol-HTTP
Go to the top of the page
+Quote Post
wNogachSpisz
post 9.12.2012, 12:15:40
Post #3





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Osobiście do prostych zapytań używam czegoś takiego:

  1. <?php
  2.  
  3. /*
  4. http_request('get', 'http://example.com', array('id' => 1), $timeout)
  5. http_request('post', 'http://example.com', array('id' => 1), $timeout)
  6. http_request('get', 'http://example.com')
  7. */
  8. function http_request() {
  9.  
  10. $args = func_get_args();
  11.  
  12. require_once 'HTTP/Request2.php';
  13. $request = new HTTP_Request2;
  14.  
  15. switch ( strtolower( $args[0] )) {
  16.  
  17. case 'get':
  18. $request->setMethod( HTTP_Request2::METHOD_GET );
  19. $request->setUrl( $args[1] );
  20. if ( isset($args[2]) && is_array($args[2]) && ! empty($args[2])) {
  21. $url = $request->getUrl();
  22. $url->setQueryVariables( $args[2] );
  23. }
  24. break;
  25.  
  26. case 'post':
  27. $request->setMethod( HTTP_Request2::METHOD_POST );
  28. $request->setUrl( $args[1] );
  29. if ( isset($args[2]) && is_array($args[2]) && ! empty($args[2])) {
  30. $request->addPostParameter( $args[2] );
  31. }
  32. break;
  33.  
  34. default:
  35. throw new Exception('Invalid request type.');
  36.  
  37. }
  38.  
  39. $timeout = isset($args[3]) ? $args[3] : 30; // 30 sekundowy timeout
  40.  
  41. $request->setConfig(array(
  42. 'connect_timeout' => $timeout,
  43. 'timeout' => $timeout,
  44. ));
  45.  
  46. try {
  47. // this will throw timeout exeption
  48. $response = $request->send();
  49. }
  50. catch ( Exception $e ) {
  51. return false;
  52. };
  53.  
  54. $response_body = $response->getBody();
  55. return $response_body;
  56. }
  57.  


Ten post edytował wNogachSpisz 9.12.2012, 12:16:19
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 21:59