我认为,在详细讨论以下细节之前,我真正应该问的一个基本问题可能是:
作为拥有已连接到平台帐户的独立 Stripe 帐户的供应商/服务提供商,我是否可以设置一个 Webhook,当平台代表我成功收费时将调用该 Webhook?
无论如何,这就是我想要做的,通过在收件人帐户上设置的 Webhook,将其配置为针对以下任何事件进行调用:
从我的仪表板测试调用 Webhook 会使其按预期触发。
但是,当我通过平台创建费用并设置destination引用连接的帐户时,网络钩子不会触发 - 即使在连接的帐户中成功创建费用以及伴随的事件。
一个重要的线索——我不知道如何解释——是仪表板的“事件和 Webhooks”选项卡中显示的事件类型不是或者charge.succeeded——charge.captured它是payment.created(!)。
但:
payment对象类型(事实上,事件中引用的对象的类型是charge):所以:
这是否只是 Stripe 需要修复的 API 实现中的一个命名问题?
或者,在我拥有的连接的独立帐户上设置 Webhook 的想法是否存在一些我无法理解的更根本的问题?
(或者我只是做错了?)
I have successfully deployed Authorize.net API(currently sandbox mode) for subscription purposes. I have also configured its webhooks that are also working. But I have a confusion that still exists even after a week on working with the said API. The question is, when a subscription starts in case of recurring billing(in my scenario subscription is monthly) the event that is called is
net.authorize.customer.subscription.created
When a month passes on a subscription and next bill payment is made by the API, what …
authorize.net webhooks recurring-billing authorize.net-webhooks
我想我已经完成了最困难的部分:推送后的 Github webhook 总是返回成功消息。
我可以手动构建。但它在推送后永远不会构建,因为“轮询”永远不会发生。
GitHub Hook 日志和 Git 轮询日志都显示“轮询尚未运行”。
这是我的配置:
关于如何开始投票有什么想法吗?
附带问题:当我在 github 中使用 webhook 时,应该由哪个进行轮询:“GITScm polling”还是“Poll SCM”?我可以删除其中一项设置吗?
我正在尝试通过 webhook(TradingView 的新功能)将警报发送到 python 程序,并使用它们与 Alpaca 进行交易。
\n\n我尝试使用 ngrok 加上我在 Github 上找到的这个脚本:
\n\nhttps://github.com/Robswc/tradingview-webhooks-bot
\n\n将端口更改为 80 后(似乎没有其他端口可以工作,我认为这是在 TradingView 的末端),我终于得到了一些东西:
\n\n127.0.0.1 - - [25/Dec/2019 21:26:45] code 400, message Bad request version (\'\xc3\x80\\x14\xc3\x80\')\n127.0.0.1 - - [25/Dec/2019 21:26:45] " \xc3\x8c \xc3\x88\xc3\x81\xc3\x84J\xc3\x82$/g{$\xc2\xb9\xc2\xa6H\xc2\xba\xc3\x8fE(\xc2\xb7\xc3\xba\xc3\xa5[:\xc3\x9c\xc2\xb4J\xc3\xb7 D+\xc2\xb56\xc3\x91fYx\xc2\xba\xc3\xbb\xc3\xa1\xc3\x99\xc3\x98kc`\xc2\xb8\xc3\x98\xc2\xad\xc2\xb0\xc3\x9cAz\xc3\x9c \xc3\x80/\xc3\x800\xc3\x80+\xc3\x80,\xc3\x8c\xc2\xa8\xc3\x8c\xc2\xa9\xc3\x80\xc3\x80 \xc3\x80\xc3\x80" HTTPStatus.BAD_REQUEST -\n127.0.0.1 - - [25/Dec/2019 21:26:51] code 400, message Bad request version (\'\xc3\x80\\x14\xc3\x80\')\n127.0.0.1 - - [25/Dec/2019 21:26:51] " \xc3\x8c \xc3\x88\xc3\x83E\xc2\xbf\xc2\xbeG\xc3\x90\xc2\xaa6\xc3\xa1e>\xc3\x83\xc3\x9dnI6M\xc3\x9a3Y\xc3\x96\xc2\xb7\xc2\xa67\xc3\x91 \xc3\xaf\xc3\xbeG{\xc3\xa4\xc3\x89\xc3\xbdCV\xc3\x99A$\xc2\xba\xc3\x950\xc3\x92B\xc3\xb42\xc3\xb5+px\xc2\xb6 \xc3\x80/\xc3\x800\xc3\x80+\xc3\x80,\xc3\x8c\xc2\xa8\xc3\x8c\xc2\xa9\xc3\x80\xc3\x80 \xc3\x80\xc3\x80[0m" HTTPStatus.BAD_REQUEST -\n127.0.0.1 - - [25/Dec/2019 21:27:47] code 400, message Bad request version (\'\xc3\x80\\x14\xc3\x80\')\n4s"H …Run Code Online (Sandbox Code Playgroud) 我有一台构建机器,我想通过它在 Microsoft Teams 中发布更新。我在 Teams 中为我的频道创建了一个 webhook 连接器,我可以向 webhook url 发送一个简单的 POST 请求,以使用以下 json 负载在 Teams 中发布消息卡:
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"summary": "Build Status",
"sections": [{
"facts": [{
"name": "Status",
"value": "<build status>"
}]
}]
}
Run Code Online (Sandbox Code Playgroud)
现在我想<build status>随着构建的进展更新该值,并可能在构建完成时添加另一个带有下载链接的事实。现有卡片发布后是否可以更新?对我来说这似乎是一个常见的用例,但我无法找到答案。有一些关于因操作而更新卡的博客,但我没有或不想执行任何操作。显然我不想继续为相同的构建过程添加卡。
是否可以禁用 Stripe webhooks 的重试?我正在阅读本文档,但找不到有关该主题的任何内容:https ://stripe.com/docs/webhooks/best-practices
如果他们之前已经这样做并且失败了,我不希望他们对我的端点执行 ping 操作,因为交易仅在进行时有效,而不是 3 小时后有效。
我正在尝试获取 Stripe 中结帐会话的 line_items,以便我可以发送一封包含产品下载链接的电子邮件,但不幸的是,当我尝试检索时,line_items我checkout_session得到一个空值。
前端:Next.js
\n这是我的代码/pages/api/webhooks/index.ts:
检查线路:77
\nimport { buffer } from "micro";\nimport Cors from "micro-cors";\nimport { NextApiRequest, NextApiResponse } from "next";\n\nimport Stripe from "stripe";\nconst stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, {\n // https://github.com/stripe/stripe-node#configuration\n apiVersion: "2020-08-27",\n});\n\nconst webhookSecret: string = process.env.STRIPE_WEBHOOK_SECRET!;\n\n// Stripe requires the raw body to construct the event.\nexport const config = {\n api: {\n bodyParser: false,\n },\n};\n\nconst cors = Cors({\n allowMethods: ["POST", "HEAD"],\n});\n\nconst webhookHandler = async (req: NextApiRequest, res: NextApiResponse) => …Run Code Online (Sandbox Code Playgroud) 以下是我在 Node.js 中初始化结帐流程的方法。
let email = req.body.email
let product_id = req.body.product_id
let YOUR_DOMAIN = 'http://localhost:8000'
const session = await stripe.checkout.sessions.create({
line_items: [{
price: product_id,
adjustable_quantity: {
enabled: true,
minimum: 1,
maximum: 5,
},
quantity: 1,
}],
customer_email: email,
mode: 'payment',
success_url: `${YOUR_DOMAIN}/payment-success`,
cancel_url: `${YOUR_DOMAIN}/payment-failure`,
});
Run Code Online (Sandbox Code Playgroud)
以下是我在 Webhooks 中订阅的事件
payment_intent.succeeded
checkout.session.completed
付款意图成功收到对象
{
"id": "evt_1KEqIxI5cib7rtVMoKMkak96",
"object": "event",
"api_version": "2020-03-02",
"created": 1641453754,
"data": {
"object": {
"id": "pi_1KEqIeI5cib7rtVMcz8zsXys",
"object": "payment_intent",
"amount": 59700,
"amount_capturable": 0,
"amount_received": 59700,
"application": null,
"application_fee_amount": null,
"automatic_payment_methods": null, …Run Code Online (Sandbox Code Playgroud) 我有以下内容MutatingWebhookConfiguration
apiVersion: admissionregistration.k8s.io/v1\nkind: MutatingWebhookConfiguration\nmetadata:\n name: example-webhook\nwebhooks:\n - name: example-webhook.default.svc.cluster.local\n admissionReviewVersions:\n - "v1beta1"\n sideEffects: "None"\n timeoutSeconds: 30\n objectSelector:\n matchLabels:\n example-webhook-enabled: "true"\n clientConfig:\n service:\n name: example-webhook\n namespace: default\n path: "/mutate"\n caBundle: "LS0tLS1CR..."\n rules:\n - operations: [ "CREATE" ]\n apiGroups: [""]\n apiVersions: ["v1"]\n resources: ["pods"]\nRun Code Online (Sandbox Code Playgroud)\n我想将webhookpod 注入到istio已启用的命名空间中istio在启用严格 TLS 模式的情况下
因此,(我认为)我的系统中不应该需要 TLSexample-webhook,因此它的设计如下:
apiVersion: v1\nkind: Service\nmetadata:\n name: example-webhook\n namespace: default\nspec:\n selector:\n app: example-webhook\n ports:\n - port: 80\n targetPort: webhook\n name: webhook\nRun Code Online (Sandbox Code Playgroud)\n … 我正在尝试让 WhatsApp 的 Cloud API 正常运行。我成功设置了 Meta Business 帐户并配置了 WhatsApp 应用程序。然后我配置了一个 Webhook 并订阅了消息事件(请参见以下屏幕截图)。
然后,我设法使用以下请求通过 API 发送消息:
curl -i -X POST `
https://graph.facebook.com/v13.0/103690452403982/messages `
-H 'Authorization: Bearer MY_TOKEN' `
-H 'Content-Type: application/json' `
-d '{ \"messaging_product\": \"whatsapp\", \"to\": \"MY_NUMBER\", \"type\": \"template\", \"template\": { \"name\": \"hello_world\", \"language\": { \"code\": \"en_US\" } } }'
Run Code Online (Sandbox Code Playgroud)
我收到了这条消息,它也是通过 webhook 发送的。如果我回复该消息,它也会通过网络钩子发送。
但是,当我从不同的 WhatsApp 号码(不是通过 API)向关联号码发送消息时,会收到消息,但不会调用 Webhook。
我怀疑我这边的配置不正确。当我用另一部手机向该号码发送短信时,聊天会显示有关 E2E 加密的通知 - API 发送消息的聊天窗口中不存在该通知。我假设 E2E 加密的消息无法传递到 Webhook,因为只有收件人才能解密该消息。
有什么想法我可能会错过吗?
先感谢您