Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z pobraniem JSON
smiady
post 13.09.2014, 19:54:23
Post #1





Grupa: Zarejestrowani
Postów: 137
Pomógł: 2
Dołączył: 2.07.2007
Skąd: Ostrzeszów

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


Witam.

Mam problem z pobraniem JSONa. Oto link:
http://geocoder.cit.api.here.com/6.2/geoco...icka_98_Wrocław
i normalnie, gdy się go wyrzuci w przeglądarce to ładnie pokaże dane, ale mam problem z pobraniem tego w PHP.

Pierwsze podejście z file_get_contents() nie wyszło bo wyświetla mi:
file_get_contents(http://geocoder.cit.api.here.com/6.2/geocode.json?app_id=DemoAppId01082013GAL&amp;app_code=AJKnXv84fjrb0KIHawS0Tg&amp;searchtext=Stabłowicka_98_Wrocław) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request
czytałem że rozwiązaniem tego problemu jest $path= str_replace('&amp;', '', $path); niestety nie działa mi to.

Drugie podejście:
  1. $c= curl_init($path);
  2. curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
  3. $json= curl_exec($c);
  4. $json= json_decode($json, true);
  5. print_r($json);

i wyrzuca mi:
Array
(
[Details] => Bad request
[type] => ApplicationError
[subtype] => BadRequest
)

co robić ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
irekk
post 13.09.2014, 22:56:07
Post #2





Grupa: Zarejestrowani
Postów: 64
Pomógł: 10
Dołączył: 2.08.2012
Skąd: DW

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


W przypadku file_get_contents sprawdź php.ini czy masz włączone allow_url_fopen. Curl powinien działać, więc może przekazujesz zły url.

Poniższe kody działają:

  1. $sUrl = 'http://geocoder.cit.api.here.com/6.2/geocode.json?app_id=DemoAppId01082013GAL&app_code=AJKnXv84fjrb0KIHawS0Tg&searchtext=Stab%B3owicka_98_Wroc%B3aw';
  2. $sJson = file_get_contents($sUrl);
  3. print_r(json_decode($sJson));


  1. $sUrl = 'http://geocoder.cit.api.here.com/6.2/geocode.json?app_id=DemoAppId01082013GAL&app_code=AJKnXv84fjrb0KIHawS0Tg&searchtext=Stab%B3owicka_98_Wroc%B3aw';
  2. $rCurl = curl_init($sUrl);
  3. curl_setopt($rCurl, CURLOPT_RETURNTRANSFER, true);
  4. $sJson = curl_exec($rCurl);
  5. print_r(json_decode($sJson));

Go to the top of the page
+Quote Post

Posty w temacie


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: 30.04.2024 - 23:13