【问题标题】:PHP - Multiple Api Call - Response time more then 15 seconds?PHP - 多个 Api 调用 - 响应时间超过 15 秒?
【发布时间】:2020-01-12 19:07:48
【问题描述】:

我需要获取 1 天内过去 30 天的订单数。这就是我写的,但响应时间是 15 秒以上。有没有更聪明的策略,也许是同时异步 API 调用?我没有找到直接调用 orders api 来接收一个请求的每日订单。有人有什么想法吗?

这是我的代码:

for ($i = 0; $i < 30; $i++)

{
    $timestamp = time();
    $tm = 86400 * $i; // 60 * 60 * 24 = 86400 = 1 day in seconds
    $tm = $timestamp - $tm;


    $the_date = date("Y-m-d", $tm);
    $newdate = date('Y-m-d', strtotime($the_date. ' + 1 days'));


    $orderinfo = shopify_call($token, $shop, "/admin/orders/count.json?status=any&created_at_min=".$the_date."&created_at_max=".$newdate, $array, 'GET');
    $orderinfo = json_decode($orderinfo['response'], JSON_PRETTY_PRINT);

    print_r($orderinfo);

}

【问题讨论】:

  • 要进行异步调用,您需要找到支持承诺的库或使用 guzzle http 客户端之类的东西编写自己的调用。

标签: php shopify


【解决方案1】:

您好,根据您的代码,您正在循环中调用 shopify Api,这就是它需要时间的原因。因此,您可以先获取最近 30 天的订单,然后再按订单创建日期轻松区分订单。

你可以参考这个 api doc Shopify order Api

在此文档中,您可以通过 created_at_min 过滤器获取最近 30 天的订单

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 2019-10-17
    • 1970-01-01
    • 1970-01-01
    • 2021-08-09
    • 2020-04-06
    相关资源
    最近更新 更多