Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Łączenie z API.. jak sie za to zabrac
Wasper
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 18.09.2011

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


Witam.

Mam problem. Dostalem ostatnio szybka dokumentacje


**********************************************
Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
url: api.xxxxxx.xxxxxx.com.pl

Authorization
Access to API is protected by token authorization.
Authorization header:
Token token="[MD5 TOKEN]"
so http header should looks like:
Authorization: Token token="[MD5 TOKEN]"

API resources
award order status

GET /api/v1/award_order_status/[ORDER NUMBER](.:format)

Available formats: json, xml
********************************

... i przyznam szczerze, ze nie mialem jeszcze totalnie stycznosci z tym i totalnie nie wiem jak sie za to zabrac.
Cel jest taki, ze podaje zmienna i odbieram status rekordu.

Wygrzebalem cos takiego
  1. // Create a stream
  2. $opts = array(
  3. 'http'=>array(
  4. 'method'=>"GET",
  5. 'header'=>"Accept-language: en\r\n" .
  6. "Cookie: foo=bar\r\n"
  7. )
  8. );
  9.  
  10. $context = stream_context_create($opts);
  11.  
  12. // Open the file using the HTTP headers set above
  13. $file = file_get_contents('http://www.example.com/', false, $context);


ale niewiele mi pomoglo, po prostu mam pustke przed oczami, nie wiem z ktorej strony to ugryzc.
Wesprzyjcie rada, prosze (IMG:style_emoticons/default/smile.gif)
Pozdro

Ten post edytował Wasper 18.09.2012, 14:13:38
Go to the top of the page
+Quote Post
toffiak
post
Post #2





Grupa: Zarejestrowani
Postów: 395
Pomógł: 80
Dołączył: 24.08.2009

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


Najłatwiej wykorzystać CURL-a, za jego pomocą wysyłasz żądanie GET na podany adres, gdzie zastępujesz ORDER NUMBER identyfikatorem zamówienia którego dane chcesz otrzymać i podajesz dane dotyczące formatu zwracanych danych: json, xml.
Następnie otrzymane dane parsujesz i pobierasz co Ci jest potrzebne.
Go to the top of the page
+Quote Post
Wasper
post
Post #3





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 18.09.2011

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


Ok, zrobilem tak:

  1. $ch = curl_init('http://xx/xx/xx/zam_id.json');
  2. $headers = array('Authorization: Token token=xxxxxxxxxxxxx');
  3. curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  4. curl_exec($ch);
  5. curl_close($ch);


i wszystko jest ok, tyle, ze dane wyrzuca mi na ekran, a jak je wpakowac do zmiennej, zeby pozniej zrobic z tego tablice?
Pewnie to jest glupie pytanie, ale juz jakos nie moge mysli pozbierac...
Go to the top of the page
+Quote Post
Arcioch
post
Post #4





Grupa: Zarejestrowani
Postów: 324
Pomógł: 110
Dołączył: 18.09.2012

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


Może tak najprościej (IMG:style_emoticons/default/wink.gif)

  1. $ch = curl_init('http://xx/xx/xx/zam_id.json');
  2. $headers = array('Authorization: Token token=xxxxxxxxxxxxx');
  3. curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  4. $result = curl_exec($ch);
  5. curl_close($ch);


I teraz pod zmienną $result masz dane pobrane cUrlem. Odpowiednie przetworzenie i powinnieneś mieć co chcesz (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Wasper
post
Post #5





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 18.09.2011

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


No wlasnie tez tak probowalem i nie dzialalo.
Ostatkami trzezwego myslenia odgrzebalem

curl_setopt($ch, CURLOPT_RETURNTRANSFER , TRUE );

i wszystko gra i dziala jak nalezy.

Dzieki wszystkim za wszelaka pomoc.
Pozdro
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 3.10.2025 - 06:16