# Store API: kosárba tétel kiegészítővel

> Kiegészítővel konfigurált termék kosárba tétele a WooCommerce Store API-val, nonce és munkamenet-süti kezelésével.

A bővítmény együttműködik a WooCommerce Store API-jával. A példa egy kiegészítős terméket tesz a kosárba. A mezők leírása a REST API referenciában van.

## Előkészületek

- Tesztboltot használj, amelyen a WooCommerce és a Product Add-Ons aktív.
- Hozz létre vásárolható tesztterméket egy rövid szöveg típusú kiegészítővel, és jegyezd fel a termék és a kiegészítő azonosítóját.
- A példa üres kosárral indul, és a `Hello` szöveget küldi.
- A Store API kosárba író kéréseihez érvényes `Nonce` fejléc vagy `Cart-Token` kell az adott kosár munkamenetéhez.

## 1. Kosár lekérése és nonce megszerzése

Kérd le a kosarat, és mentsd el a sütiket. A válasz `Nonce` fejlécét másold ki a következő kéréshez, és ugyanazt a süti-fájlt használd. A nonce és a sütik privát munkamenetadatok, ne oszd meg őket.

```bash
curl -i -c cookies.txt https://example.com/wp-json/wc/store/v1/cart
```

## 2. Termék kosárba tétele

Cseréld a `PRODUCT_ID`, `ADDON_ID` és `YOUR_NONCE` értékeket a tesztbolt és az előző válasz értékeire. A kiegészítő azonosítója az `addons_configuration` objektum kulcsa.

```bash
curl -X POST 'https://example.com/wp-json/wc/store/v1/cart/add-item' \
  -b cookies.txt \
  -H 'Nonce: YOUR_NONCE' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": PRODUCT_ID,
    "quantity": 1,
    "addons_configuration": {
      "ADDON_ID": "Hello"
    }
  }'
```

A kosárba tett termék válaszában ellenőrizd, hogy szerepel a termék és a rövid szöveg kiegészítő értéke.

## Hibaelhárítás

- Ha a szerver érvénytelen JSON-t jelez, nézd meg, hogy a termék azonosítója számként, idézőjel nélkül áll-e a kérésben, és vedd ki a megjegyzéseket a JSON-ból.
- Hiányzó vagy érvénytelen nonce esetén kérj új kosár-nonce-t, és használd hozzá a hozzá tartozó munkamenet-sütiket.
- Ellenőrizd, hogy a termék vásárolható, és a kiegészítő azonosítója tényleg ehhez a termékhez tartozik.

## Más mezőtípusok

A többi kiegészítő-típus más értéket vár. Mindig az adott mező típusának és érvényes opcióinak megfelelő értéket küldd. A példa a fájlfeltöltést nem tárgyalja.
