【问题标题】:What happens if php://input receives simultaneous webhooks?如果 php://input 同时接收到 webhook 会发生什么?
【发布时间】:2023-04-08 21:05:02
【问题描述】:

我编写了一个 API,它采用 WooCommerce webhook 并将数据输入到我们的 CRM 中。我正在使用:

file_get_contents("php://input");

整个脚本都在一个文件中,因为它非常简单。

我的问题是,如果 php://input 同时收到两个或多个 webhook 会发生什么。它会像队列一样运行还是可能会被丢弃?

我问的原因是我们有多个 WC 商店,我不确定是否需要为每个商店克隆脚本,或者它们是否都可以输入到同一个脚本中。

感谢您的帮助!

【问题讨论】:

  • 就像它收到任何其他http请求集时一样...每个请求都单独处理,通常按照它们到达的顺序。如果它们都应该使用相同的代码进行处理,那么您只需要一个脚本。您不会因为可能有 20 个用户就复制 20 个网站主页,对吗?这也不例外。
  • 如果脚本必须执行不同的操作,因为它是不同的存储(并且如果无法从请求输入数据中知道它应该使用哪个存储并改变行为),您只需要多个脚本那样)。当然,这些脚本都会有不同的 URL,因此您必须配置发件人以发送到不同的 URL。但这与接收并发请求无关。
  • 你完全正确。我不知道为什么我没有想到。由于某种原因,它没有注册为 http 请求。非常感谢这个人。但是,是的,脚本可以识别哪个商店,所以我会让它们全部输入一个。你摇滚!!
  • 我希望我能接受您的评论作为答案。大声笑
  • 你的愿望就是我的命令...见下文:-)

标签: php woocommerce hook-woocommerce woocommerce-rest-api


【解决方案1】:

就像它收到任何其他 http 请求集时一样...每个请求都单独处理,通常按照它们到达的顺序。如果它们都应该使用相同的代码进行处理,那么您只需要一个脚本。您不会因为可能有 20 个用户就复制 20 个网站主页,对吗?这也不例外。

如果脚本必须执行不同的操作,因为它是不同的存储(并且如果无法从请求输入数据中知道它应该使用哪个存储,并以这种方式改变行为),则您只需要多个脚本。当然,这些脚本都会有不同的 URL,因此您必须配置发件人以发送到不同的 URL。但这与接收并发请求无关。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    • 2021-08-22
    相关资源
    最近更新 更多