Storefront API 拿到的 checkoutUrl 还能改吗
现象#
cart.checkoutUrl 已经生成,想在跳转前追加折扣码或备注,不确定能不能改参数。
原因#
- checkoutUrl 是带 token 的签名地址,追加未知参数会被忽略
- 折扣应在 cart 层用
cartDiscountCodesUpdate应用 - 备注应在 cart 的 attributes 里写
处理步骤#
- 折扣码用
cartDiscountCodesUpdate(discountCodes: [{code: "XXX"}]) - 备注用
cartAttributesUpdate - 确实需要在 URL 上带参数时,只能追加 Shopify 支持的
locale等白名单参数 - 跳转前重新查询 cart 确认折扣已生效
验收标准#
跳转到结账页后折扣、备注、货币均正确带入,无参数被静默丢弃。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。