Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: API vs JSON
Forum PHP.pl > Forum > PHP
winiar789
Dzień dobry Państwu exclamation.gif

Mam za zadanie podpiąć się do API - no i jak zawsze pojawiają sie problemy. Tak jak nie mam problemu z pewnymi rzeczami
tak tego API nie rozumie. Dostawca dał o to taki zestaw bez opisu ... dodwania produktu do systemu.

POST /api/products/products/updates.json

no i example:

  1. {
  2. "product": {
  3. "auth": {
  4. "login": "xxx",
  5. "apiKey": "xxx"
  6. },
  7. "id": 1,
  8. "parent": 0,
  9. "name": "string",
  10. "description": "string",
  11. "weight": 0,
  12. "price": 0,
  13. "pricePromo": 0,
  14. "shippingMethodBoundary": "string",
  15. "quantity": 0,
  16. "availability": 0
  17. }
  18. }



Wszystko generalnie rozumiem klucz api, wartości itd. ale zastanawiam się nad jednym jak ja mam wysłać coś takiego np przez CURL

/api/products/products/updates.json

w szczególności iż podają wartość pliku updates.json czyli mam wysłać plik ?

questionmark.gif?
Pyton_000
Nie, masz zrobić POST na podany adres z zawartością JSON podaną w example (tj strukturą)
SmokAnalog
Warto rozumieć, że w HTTP na dobrą sprawę nie ma czegoś takiego jak plik. Przeglądarki trochę wypaczają rozumienie HTTP, bo na stronach internetowych mamy przesyłanie pól z wartościami, plików z naszych komputerów itd. Ale HTTP to nic więcej jak przesyłanie odpowiednio sformatowanych treści, a na stronach internetowych HTTP się nie kończy.

W każdym zapytaniu HTTP możesz przesłać dowolną treść (choć nie dla każdej metody HTTP powinieneś). Jeśli API oczekuje od Ciebie treści w postaci JSON-a, to powinieneś przesłać jej po prostu ciąg znaków w formacie JSON. Najlepiej dodaj też nagłówek Content-Type: application/json, chociaż nikt nie powiedział, że to API w ogóle sprawdza Content-Type.

Zawsze polecam każdemu web developerowi zapoznać się z protokołem HTTP, bo to o całe lata świetlne poprawia rozumienie co się dzieje między przeglądarką a serwerem.
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.