为什么在创建模型衍生作业时不考虑 webhook 工作流?
Why is webhook workflow not taken into consideration when creating modelderivative job?
当我创建一个作业时,使用 webhook 完成
https://developer.api.autodesk.com/modelderivative/v2/designdata/job 不考虑 misc.workflow 部分。
这是我与邮递员一起使用的 POST(header 仅包含授权密钥):
{
"input": {
"urn": "{{Urn}}"
},
"output": {
"formats": [
{
"type": "svf",
"views": ["3d", "2d"]
}]
},
"misc" : {
"workflow" : "my-workflow-id"
}
}
在响应中,我没有任何与工作流相关的内容,但是作业被触发,即将结束,没有激活钩子。
当我第二次触发此作业 POST 时,我现在在 POST 响应中考虑了工作流程,但是为时已晚,文件已经转换:
...
"misc": {
"workflow": "my-workflow-id"
}
...
我的钩子是这样创建的:
{
"callbackUrl": "https://9756f648.ngrok.io/callback",
"scope": {
"workflow": "my-workflow-id"
}
}
并且可以在现有的钩子中看到:(https://developer.api.autodesk.com/webhooks/v1/systems/derivative/hooks)
{
"links": {
"next": null
},
"data": [
{
"hookId": "d36ab2b0-5777-11e8-8097-eb863aa080ce",
"tenant": "my-workflow-id",
"callbackUrl": "http://9756f648.ngrok.io/callback",
"createdBy": "tMfppWcTipLoLJtkqkGBNhA6Ot40yti5",
"event": "extraction.finished",
"createdDate": "2018-05-14T13:07:59.451+0000",
"system": "derivative",
"creatorType": "Application",
"status": "active",
"scope": {
"workflow": "my-workflow-id"
},
"urn": "urn:adsk.webhooks:events.hook:d36ab2b0-5777-11e8-8097-eb863aa080ce",
"__self__": "/systems/derivative/events/extraction.finished/hooks/d36ab2b0-5777-11e8-8097-eb863aa080ce"
}
]
}
我的问题是:为什么我的钩子在创建工作时不是理所当然的,然后就再也没有触发过?
备注:
- 我遵循了 https://forge.autodesk.com/blog/introducing-webhook-model-derivative-api and https://developer.autodesk.com/en/docs/webhooks/v1/tutorials/create-a-hook-model-derivative/
的指示
- 我用邮递员[=38=]
谢谢,
几天后用同一个邮递员或 node.js 代码钩子工作得很好。
也许我想念我这边的错误设置,或者 ngrok-webhook 在这个特定时间遇到了一些问题(因为在我提出问题前几天它也在工作)。
我认为这个问题解决了。
@Forge-team:如果我们能在 forge 端有 hook-trigger-history 就好了。这样,我们就可以知道触发了哪个钩子,当我们没有触发钩子时,这可以帮助调查,但期望有一个。
当我创建一个作业时,使用 webhook 完成 https://developer.api.autodesk.com/modelderivative/v2/designdata/job 不考虑 misc.workflow 部分。
这是我与邮递员一起使用的 POST(header 仅包含授权密钥):
{
"input": {
"urn": "{{Urn}}"
},
"output": {
"formats": [
{
"type": "svf",
"views": ["3d", "2d"]
}]
},
"misc" : {
"workflow" : "my-workflow-id"
}
}
在响应中,我没有任何与工作流相关的内容,但是作业被触发,即将结束,没有激活钩子。
当我第二次触发此作业 POST 时,我现在在 POST 响应中考虑了工作流程,但是为时已晚,文件已经转换:
...
"misc": {
"workflow": "my-workflow-id"
}
...
我的钩子是这样创建的:
{
"callbackUrl": "https://9756f648.ngrok.io/callback",
"scope": {
"workflow": "my-workflow-id"
}
}
并且可以在现有的钩子中看到:(https://developer.api.autodesk.com/webhooks/v1/systems/derivative/hooks)
{
"links": {
"next": null
},
"data": [
{
"hookId": "d36ab2b0-5777-11e8-8097-eb863aa080ce",
"tenant": "my-workflow-id",
"callbackUrl": "http://9756f648.ngrok.io/callback",
"createdBy": "tMfppWcTipLoLJtkqkGBNhA6Ot40yti5",
"event": "extraction.finished",
"createdDate": "2018-05-14T13:07:59.451+0000",
"system": "derivative",
"creatorType": "Application",
"status": "active",
"scope": {
"workflow": "my-workflow-id"
},
"urn": "urn:adsk.webhooks:events.hook:d36ab2b0-5777-11e8-8097-eb863aa080ce",
"__self__": "/systems/derivative/events/extraction.finished/hooks/d36ab2b0-5777-11e8-8097-eb863aa080ce"
}
]
}
我的问题是:为什么我的钩子在创建工作时不是理所当然的,然后就再也没有触发过?
备注:
- 我遵循了 https://forge.autodesk.com/blog/introducing-webhook-model-derivative-api and https://developer.autodesk.com/en/docs/webhooks/v1/tutorials/create-a-hook-model-derivative/ 的指示
- 我用邮递员[=38=]
谢谢,
几天后用同一个邮递员或 node.js 代码钩子工作得很好。 也许我想念我这边的错误设置,或者 ngrok-webhook 在这个特定时间遇到了一些问题(因为在我提出问题前几天它也在工作)。 我认为这个问题解决了。
@Forge-team:如果我们能在 forge 端有 hook-trigger-history 就好了。这样,我们就可以知道触发了哪个钩子,当我们没有触发钩子时,这可以帮助调查,但期望有一个。