【问题标题】:Square Connect can't subscribe to webhook notificationsSquare Connect 无法订阅 webhook 通知
【发布时间】:2018-07-06 15:29:26
【问题描述】:

我正在按照说明 here 为 Square 付款设置 webhook 通知。但是当我在步骤 5 中执行 curl 语句订阅我自己的商家的付款通知时,我得到了响应:

{"type":"bad_request","message":"Request body is not an array of event types"}

curl 语句是

curl -X PUT -H "Authorization: Bearer MY_ACCESS_TOKEN" -d '{"event_types": ["PAYMENT_UPDATED"]}' https://connect.squareup.com/v1/me/webhooks

他们是否更新了事件类型名称?我在 webhook 上找不到任何其他文档。

【问题讨论】:

    标签: webhooks square-connect


    【解决方案1】:

    哎呀!感谢您在博客文章中发现此错误,我现在已更正。之前在步骤 5 中显示的curl 的格式有两个错误:

    1. 请求正文应该是所需事件类型的数组,例如:

      ["PAYMENT_UPDATED"]

      周围没有 JSON 对象。正确的格式也显示在API documentation

    2. 请求缺少Content-Type: application/json 标头。对 Connect API 端点的所有请求都需要此标头。

    正确的请求如下所示,您的个人访问令牌在指示处被替换:

    curl -X PUT -H "Authorization: Bearer PERSONAL_ACCESS_TOKEN" -H "Content-Type: application/json" -d "[\"PAYMENT_UPDATED\"]" https://connect.squareup.com/v1/me/webhooks

    【讨论】:

    • 我仍然收到完全相同的错误。现在我正在使用: curl -X PUT -H "Authorization: Bearer MY_ACCESS_TOKEN" -d '["PAYMENT_UPDATED"]' connect.squareup.com/v1/me/webhooks。只是为了仔细检查,我在那个端点上做了一个 GET,它给了我一个空数组。
    • 啊,博客文章中的命令也缺少必需的Content-Type 标头。我已经相应地更新了上述答案,并将更正博文。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-28
    • 2016-10-17
    • 1970-01-01
    • 2018-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多