amazonの買い物カゴで、IDをどう使っているのか調査する
### amazon
カートに入れるbuttonがinput type=”submit”としています。
<span class="a-declarative" data-action="dp-pre-atc-declarative" data-dp-pre-atc-declarative="{}" id="atc-declarative">
<span id="submit.add-to-cart" class="a-button a-spacing-small a-button-primary a-button-icon"><span class="a-button-inner"><i class="a-icon a-icon-cart"></i><input id="add-to-cart-button" name="submit.add-to-cart" title="カートに入れる" data-hover="左から<b>__dims__</b>を選択して<br>ショッピングカートに追加" class="a-button-input" type="submit" value="カートに入れる" aria-labelledby="submit.add-to-cart-announce"><span id="submit.add-to-cart-announce" class="a-button-text" aria-hidden="true">カートに入れる</span></span></span>
</span>
“a”:”B08C9R7MVT”,”quantity”:”1″と書いてあるので、恐らくB08C9R7MVTが商品IDではないかと思う。
<script type="a-state" data-a-state="{"key":"turbo-checkout-page-state"}">{"turboWeblab":"RCX_CHECKOUT_TURBO_DESKTOP_NONPRIME_87784","strings":{"TURBO_CHECKOUT_HEADER":"今すぐ購入:ナパバレーの日本人醸造家 ハヤシワインズ 2015 パウロニア・カベルネソーヴィニヨン [カリフォルニア/赤ワイン/750ml]","TURBO_LOADING_TEXT":"注文内容を読み込み中"},"inputs":{"a":"B08C9R7MVT","quantity":"1","oid":"","addressId":""},"configurations":{"isSignInEnabled":true,"initiateSelector":"#buy-now-button","prefetchEnabled":true},"buttonID":"buy-now","eligibility":{"isEligible":false},"turboWeblabTreatment":"T2","timeout":"5000"}</script>
</div>
商品ページのcookie
商品追加
やはり、”B08C9R7MVT”を渡しています。
<div id="huc-v2-order-row-item-B08C9R7MVT" data-asin="B08C9R7MVT" data-itemid="Ca5ba925d-a3ea-4f29-b288-38f3bfe04fe2" class="a-box a-box-thumbnail huc-middle-vertical huc-no-radius huc-v2-order-row-image-box huc-green-border huc-v2-order-row-item"><div class="a-box-inner">
<img alt="" src="https://m.media-amazon.com/images/I/31j5L8Leq4L.jpg" class="huc-no-radius huc-v2-order-row-image huc-v2-table-col">
</div></div>
ここで、Cookieを見ても、どの値が商品のCookieかは不明
カートの編集ページ
数量変更
-> name=”quantity”としているので、quantityで管理している事がわかる。
<span class="a-dropdown-container"><label class="a-native-dropdown">数量:<span class='sc-offscreen-label' aria-label='数量'></span></label><select name="quantity" autocomplete="off" data-a-touch-header="数量" tabindex="0" data-action="a-dropdown-select" class="a-native-dropdown a-declarative">
<option value="0" data-a-css-class="quantity-option">
0 (削除)
</option>
// quantity
<input name="submit.update-quantity.hogehoge38f3bfe04fe2"
value="更新"
data-action=""
aria-label="更新"
type="submit"
class="a-color-link"/>
</span>
削除
<input name="submit.delete.hohoge"
value="削除"
data-action="delete"
aria-label="削除 ナパバレーの日本人醸造家 ハヤシワインズ 2015 パウロニア・カベルネソーヴィニヨン [カリフォルニア/赤ワイン/750ml]"
type="submit"
class="a-color-link"/>
</span>
なるほど、商品カートは基本、商品IDとquantityで管理し、カートではquantity(数量)とdelete(削除)の機能があるって事がわかった。