首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >发送空体的WooCommerce网络钩子

发送空体的WooCommerce网络钩子
EN

Stack Overflow用户
提问于 2021-12-01 10:21:48
回答 1查看 614关注 0票数 0

当web钩子启动时,我可以在另一端看到请求的主体是空的。然后,我启用了WP_DEBUG,进行了另一个API调用,并检查了日志文件( WooCommerce >> Status >> Logs >>日志文件在给定的一天内),并且可以看到它确实是空的。所以在去目的地的路上,不是数据“从卡车上掉下来”。

我在代码中找到了拍摄的位置,如下所示:

代码语言:javascript
复制
do_action( 'my_custom_webhook', $order->id, [], $order );

所以我把它改成:

代码语言:javascript
复制
error_log( $order );
do_action( 'my_custom_webhook', $order->id, [], $order );

可以看出$order并不是空的。

WIERD!

所采取的调试步骤

1.正确定义的Webhooks

我花了相当多的时间,深入到网络钩子中,看看是否有什么东西,那是不正确的设置。或者一些被废弃的遗留代码。

2.错误日志

我查了几次错误日志。假设是一些错误的代码,在发送API调用之前遇到了一个错误。但这没有任何意义,因为这很可能会阻止API调用完全触发。嗯!

3. Webhooks自动失活

当身体是空的时候,我点击的API也会返回并出错500。所以网络钩子让他们自己停用了。每当我试图重新激活它们时,我仍然会得到一个错误(这两个中的任何一个):

  • 错误:传递URL返回响应代码:500
  • 错误:无法到达传递URL : cURL错误28: 5001毫秒后收到0字节的操作tiemd。我想了很长一段时间,这是问题的核心。

但我没能改变API。所以没有什么好办法来解决这个问题。

我最终意识到,即使我得到了那个错误,这个钩子仍然被激活.而且起作用了!

所以我完全忽略了这个错误,然后继续前进。

4.权限

我想这可能是关于权限的,因为我会看到我得到了一个woocommerce_rest_cannot_view-error。

系统细节

  • WordPress-version 5.8.1
  • WooCommerce-version: 4.9.3
  • 网站是一个自定义网站,建在格子、基岩和圣贤山上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-01 10:21:48

在这里找到了解决方案:https://github.com/woocommerce/woocommerce/issues/24533#issuecomment-551148570

只需删除web钩子,并使用完全相同的内容再次创建它/它们。

¯\_(ツ)_/¯

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70182486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档