You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将lineitems数组加入JSON传递至CheckOut后端API?

POS后端API结账请求的LineItems传递说明

我开发了一套为POS(销售点)网站提供服务的后端API,网站通过JSON格式与API端点交互。用户在购物车添加商品后点击「结账」,网站需要调用CheckOut()端点,并传递包含purchase和lineitems两个节点的JSON数据。但前端同事表示不清楚如何发送lineitems部分,我想了解如何将购物车数组加入请求JSON,或者需要告知开发者查阅哪些资料。

API预期接收的JSON格式

{
  "purchase": {
    "citf": "LPSO",
    "citfuserid": "2314734",
    "citfsessiontoken": "A6BBB754BD9F4EB9",
    "ytotal_sale": 20.70,
    "ytotal_tax": 1.08
  },
  "lineitems": [
    {
      "cpl_dscs_id": "0142C45AFF0A4C89",
      "nqty": 8,
      "yunit_price": 1.35,
      "ntax_rate": 8.45
    },
    {
      "cpl_dscs_id": "034CA60B26FD4C8A",
      "nqty": 1,
      "yunit_price": 32.89,
      "ntax_rate": 8.45
    },
    {
      "cpl_dscs_id": "03605BACB1364791",
      "nqty": 5,
      "yunit_price": 3.32,
      "ntax_rate": 8.45
    },
    {
      "cpl_dscs_id": "037FB5C58F8849B2",
      "nqty": 3,
      "yunit_price": 6.04,
      "ntax_rate": 4
    },
    {
      "cpl_dscs_id": "0B81210989A649AC",
      "nqty": 1,
      "yunit_price": 4.03,
      "ntax_rate": 4
    }
  ]
}

解决方法与参考方向

直接实现步骤

前端只需将购物车数组按API要求的字段映射后,作为lineitems的值嵌入请求主体即可,以下是JavaScript示例:

// 假设前端购物车原始数据
const cartItems = [
  { productId: '0142C45AFF0A4C89', quantity: 8, price: 1.35, taxRate: 8.45 },
  // 其他购物车商品...
];

// 映射为API要求的lineitems格式
const lineitems = cartItems.map(item => ({
  cpl_dscs_id: item.productId,
  nqty: item.quantity,
  yunit_price: item.price,
  ntax_rate: item.taxRate
}));

// 构造完整请求体
const requestBody = {
  purchase: {
    // 填充purchase节点的必填字段...
    citf: 'LPSO',
    citfuserid: '2314734',
    citfsessiontoken: 'A6BBB754BD9F4EB9',
    ytotal_sale: 20.70,
    ytotal_tax: 1.08
  },
  lineitems: lineitems
};

// 发送POST请求到CheckOut端点
fetch('/api/CheckOut', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(requestBody)
});

给前端开发者的参考要点

  • 确保HTTP请求的Content-Type头设置为application/json,否则后端无法正确解析JSON数据
  • 掌握JavaScript中JSON.stringify()方法的使用,用于将前端对象/数组序列化为JSON字符串
  • 严格核对字段名:确保购物车数据的每个字段与API要求的字段完全匹配(如商品ID对应cpl_dscs_id,数量对应nqty等)

内容的提问来源于stack exchange,提问作者vfpjohn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:23:18