Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Integracja z API SendOwl
Forum PHP.pl > Forum > PHP
m-mike
Cześć
Mam taki kod:
  1. <?php
  2.  
  3. $key = 'xxxxx'; // my own
  4. $secret = 'yyyyy'; // my own
  5. $url = 'https://' . $key . ':' . $secret . '@www.sendowl.com/api/v1/products/';
  6. $ch = curl_init($url);
  7. curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json'));
  8. $output = curl_exec( $ch );
  9. curl_close($ch);
  10. echo "output:".$output;
  11. ?>


A ich API mi odpowiada:
Please specify a supported `Accept` header. Valid options: `application/json`, `application/xml`

Co może być nie tak? Dzięki za wszelkie podpowiedzi.
Michal
rad11
Sprobuj dodac 'Content-type: application/json' jako kolejny element w tablicy z naglowkami. Pytanie tez jest takie co probujesz osiągnąć ?
m-mike
Bez zmian, nic to nie dało.

GET /api/v1/products
Returns all possible products

Michal
Pyton_000
Zapomniałeś jeszcze o

Kod
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
m-mike
Dzięki za wskazówkę, dodane, ale nadal zwraca to samo.


Michał
Pyton_000
U mnie działa twój kod. Wypluwa błąd autoryzacji co jest normalne, ale cała reszta jest ok.
m-mike
Próbowałem tez przez https://apitester.com/, ale tu dzieje się dokładnie tak samo:

Response Headers
HTTP/1.1 301 Moved Permanently
Date: Sun, 06 May 2018 10:20:28 GMT
Content-Type: text/html; charset=iso-8859-1
Transfer-Encoding: chunked
Connection: keep-alive
Set-Cookie: __cfduid=dc9cc1af67e8c14d3b683380ba36e90141525602028; expires=Mon, 06-May-19 10:20:28 GMT; path=/; domain=.sendowl.com; HttpOnly
Location: https://www.sendowl.com/api/v1/products
Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
Server: cloudflare
CF-RAY: 416ab6e35a5d57b3-IAD

Response Body
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
<script src="/cdn-cgi/apps/head/oR54GLIzrz0H2Yq5frMVrw6eZGY.js"></script></head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://www.sendowl.com/api/v1/products">here</a>.</p>
</body></html>
Pyton_000
No nie dzieje się dokładnie tak samo bo masz komunikat że masz 301.

dodaj
Kod
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
i powinno być ok
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.