webhooks - 已创建 Webhook,但从未命中回调
问题描述
我正在尝试在文件转换过程中删除池并集成 webhook。问题是 webhook 已创建但回调从未被回调。
我正在按照此处的说明进行操作:https ://forge.autodesk.com/en/docs/webhooks/v1/tutorials/create-a-hook-model-derivative/
Web 服务器由以下命令启动:ngrok http host-header=rewrite https://localhost:44366
回调是http://f36a47b8.ngrok.io/derivative并且已启动并正在运行。来自邮递员(内部网络)的 Post 请求和来自外部网络(蜂窝数据)的 Post 请求正在到达端点并被成功重定向。
创建一个钩子:
"hookId": "51897b50-522a-11ea-b885-f34f23e3435e",
"tenant": "c0761189-32dd-4ca3-9e52-3ae400f91651",
"callbackUrl": "http://f36a47b8.ngrok.io/derivative",
"createdBy": "HUpqLPysSUmbFGlhQo0uG8XMqimfQnRG",
"event": "extraction.updated",
"createdDate": "2020-02-18T08:40:29.829+0000",
"system": "derivative",
"creatorType": "Application",
"status": "active",
"scope": {
"workflow": "c0761189-32dd-4ca3-9e52-3ae400f91651"
},
"urn": "urn:adsk.webhooks:events.hook:51897b50-522a-11ea-b885-f34f23e3435e",
"__self__": "/systems/derivative/events/extraction.updated/hooks/51897b50-522a-11ea-b885-f34f23e3435e"
}
比modelderivative/v2/designdata/job
发出以下内容的调用:
var job = new JobRequest
{
Input = new Input
{
Urn = urnBase64,
},
Output = new Output
{
Formats = new List<Format>
{
new Format
{
Type = "svf",
Views = new List<string> { "2d", "3d" }
}
},
Destination = new Destination { Region = "EMEA" }
},
Misc = new Misc
{
Workflow = workflowId
}
};
响应是成功的瓮(像以前一样);
从那时起,网络钩子就没有任何东西了。回调永远不会到达,即使在一段时间内文件被转换并且可以像以前一样在查看器中加载。
我看过这些主题:
但他们没有帮助。
我错过了什么?
解决方案
事实证明,“EMEA”区域的衍生 API 作业存在问题,在该区域作业完成时不会调用回调。将区域更改为“我们”可以解决问题,并且在发生工作事件时会触发回调。
从文档示例中更改区域参数:
curl -X 'POST' \
-H 'Content-Type: application/json; charset=utf-8' \
-H 'Authorization: Bearer PtnrvrtSRpWwUi3407QhgvqdUVKL' \
-H 'x-ads-force: false' -v 'https://developer.api.autodesk.com/modelderivative/v2/designdata/job' \
-d
'{
"input": {
"urn": "dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6bW9kZWxkZXJpdmF0aXZlL0E1LnppcA",
"compressedUrn": true,
"rootFilename": "A5.iam"
},
"output": {
"destination": {
"region": "us" <- Change the region form 'EMEA' to 'us'
},
"formats": [
{
"type": "svf",
"views": [
"2d",
"3d"
]
}
]
}
}'
推荐阅读
- amazon-ec2 - 无法从 AWS ELB 访问 AWS 实例
- html - 导航下拉问题
- java - 如何从在 dockerized Tomee 服务器上运行的应用程序成功连接到 Dockerized DB2 数据库/服务器 - 两个容器都使用 jdk10?
- javascript - 使用 Jest,在 vue.js 中对单个文件组件进行单元测试时,如何监视扩展组件的方法
- angular - 订阅返回未定义
- java - 如何使用 JASIG SSO 同时验证两个客户端
- python - Python中意外返回的变量
- jquery - CSS:扩展一个从右到左显示文字
- android - Firebaserecycleradapter() 无法应用?
- java - Java Socket Server 与 Python 客户端通信,程序不会进入“inputLine = in.readLine()”-loop