大数跨境

独家 > 时间戳过滤器排除完整秒

独家 > 时间戳过滤器排除完整秒 Shopify电商独立站
2026-10-19
2
导读:截至 API 版本 2026-10,在 GraphQL Admin API 搜索语法中,时间戳过滤器上的严格下界(>)将排除完整的秒。例如,`created_at:>'2026-09-15 T12:0

自 API 版本 2026-10 起,GraphQL Admin API 搜索语法中时间戳过滤器上的独占下界(>)会排除该秒的整秒部分。例如,created_at:>'2026-09-15T12:00:02Z' 不再返回在 12:00:02.500 创建的订单。

发生了哪些变化

GraphQL Admin API 以秒为单位返回诸如 createdAt 之类的时间戳,但内部某些资源会以带小数秒的形式存储它们。

在 2026-10 之前,created_at:>'2026-09-15T12:00:02Z' 与 12:00:02.000000 进行比较。它会返回该秒内稍晚的记录,并且响应中以 createdAt: "2026-09-15T12:00:02Z" 显示这些记录。相同的记录也匹配 created_at:<='2026-09-15T12:00:02Z'。

自 2026-10 起,当 > 值没有小数秒时,过滤器从该秒结束后的时刻开始(12:00:02.999999)。仅当 API 为该记录返回的时间戳晚于 T 时,记录才匹配 >T,因此 >T 和 <=T 不再重叠。

以下过滤器在任何版本上均不发生变化:>=、< 和 <=;仅包含日期的值如 created_at:>2026-09-15;以及带有小数秒的值如 created_at:>'2026-09-15T12:00:02.250Z'。

受影响的人群

向 GraphQL Admin API 连接的 query 参数中的时间戳过滤器发送不带小数秒的 > 下界的应用,例如在 orders 查询 上使用 created_at。

应对措施

2026-07 或更早版本上的应用无需进行任何更改。在将应用迁移至 2026-10 之前,请检查其 > 过滤器:

  1. 查找将来自较早响应的时间戳作为 > 下界传递的查询,例如用于获取比应用上次看到的最后一条记录更新的记录。
  2. 如果应用不能错过在该同一秒内稍后创建的记录,请使用 >= 配合该时间戳,并通过 id 去除重复项。
query OrdersSinceLastSync { orders(first: 50, sortKey: CREATED_AT, query: "created_at:>='2026-09-15T12:00:02Z'") { nodes { id createdAt } } }
【声明】内容源于网络
0
0
Shopify电商独立站
1234
内容 7146
粉丝 0
Shopify电商独立站 1234
总阅读87.4k
粉丝0
内容7.1k