【问题标题】:Do I have to loop through each 'page' of orders to get all orders in one WooComerce REST Api query?我是否必须遍历订单的每个“页面”才能在一个 WooComerce REST Api 查询中获取所有订单?
【发布时间】:2019-01-11 09:45:59
【问题描述】:

我构建了一个 KNIME 工作流程,可帮助我分析来自多个渠道的(销售)数据。过去,我过去常常手动导出所有订单并使用 XSLX 或 CSV 阅读器,但我想通过 WooCommerce 的 REST API 来完成,以减少体力劳动。

我希望能够通过一个查询接收到现在为止的所有订单。到目前为止,我只得到与我为 &per_page=X 填写的 # 一样多的信息。但是如果我填写像 1000,它会给出一个错误。这+我的常识让我觉得我想错了!

如果不可能,循环遍历所有页面是次优的吗?

我已经设法通过基本身份验证连接到 api。以下查询返回订单,但只有 10 个:

我尝试增加 per_page 的数量,但我认为这不是将所有订单放在一个表中的正确方法。

https://XXXX.nl/wp-json/wc/v3/orders?consumer_key=XXXX&consumer_secret=XXXX

我目前的心态希望能够通过单个查询接收迄今为止的所有订单。但个人也觉得这不是常见的做法。循环浏览所有页面是次优的吗?

提前感谢您的回复。我更像是一名数据分析家,而不是一名数据工程师或科学家,我希望你的回答能帮助我实现成为一名科学家的目标:)

【问题讨论】:

    标签: rest api woocommerce orders knime


    【解决方案1】:

    可以通过在请求中传递参数“per_page”来实现

    per_page    integer Maximum number of items to be returned in result set. Default is 10.
    

    尝试 -1 作为值

    https://woocommerce.github.io/woocommerce-rest-api-docs/?php#list-all-orders

    【讨论】:

    • 如果我填写超过 100,我没有输出和 400 错误。也许我都错了,但我认为这不是正确的方法。
    • 在 URL 中尝试这样。 &filter[per_page]=-1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-10
    • 2021-02-15
    • 1970-01-01
    • 2022-01-08
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多