Witam, potrzebuje pobrać dane z pewnego api, zakładałem że będzie to prosta sprawa, w projektach .net'owych dodawałem bibliotekę web client i bez problemu pobierałem dane. Mój problem tkwi w tym że wszelkie biblioteki, poradniki i co tylko znajdę odwołują się do dużych projektów php'owych z frameworkami i użyciem composera, ja nie znam tych rzeczy, a chcę dopisać sobie tylko jedną funkcjonalność do wordpress'a. Jakieś rady jakiej biblioteki użyć i jak żeby pobrać te dane w czystym php?
http://php.net/manual/en/book.curl.php
A co do composera - to nie jest w żaden sposób trudne. Nie twierdzę byś zaraz używał frameworków, ale z composera warto pociągnąć taką paczkę
https://github.com/guzzle/guzzle
$json = file_get_contents($adres_url);
$dane_jako_obiekt = json_decode($json);
$dane_jako_tablica = json_decode($json, true);
Dziękuje wam bardzo za pomoc, problem załatwiony
Walczę z tym cały czas, samo pobieranie działa, problem pojawia się kiedy request musi przechodzić przez autoryzacje, kiedy w postmanie ustawiam OAuth 1.0 i przesyłanie przez post, uzupełniam consumer i secret key i wszystko przechodzi, a ja dostaje dane, nie jestem jednak w stanie zrobić tego w phpie, robie to tak:
$params = [
"oauth_consumer_key" => $ck,
"oauth_consumer_secret" => $cs,
];
$params = http_build_query($params, null, ',', PHP_QUERY_RFC3986);
$opts = ["http" => ["header" => "Authorization: OAuth " . $params]];
$context = stream_context_create($opts);
$data = file_get_contents($url_products2, false, $context);
echo $data;
Problem jaki wywala to: failed to open stream: HTTP request failed! HTTP/1.0 401 Unauthorized w linii w której wywołuje file_get_contents.
Jakieś pomysły jak to pokonać?
Edit.
Wersja gdzie doklejam resztę właściwości przekopiowanych z postmana który wygląda tak:
"oauth_token" => "145885e5-d998-4df5-b8c5-10bed6720a05",
"oauth_signature_method" => "HMAC-SHA1",
"oauth_timestamp" => "1529053365",
"oauth_nonce" => "VcKZfTNZSrQ",
"oauth_signature" => "DdKndLnwcUzRHzyHj1mZu5uCdhs%3D",
Też nie działa