对于异步API使用轮询的方式查询操作结果是一种低效的方式,为此ZStack Cloud提供Webhook的方式主动推送异步API结果给调用者。
POST zstack/v1/zones
headers:
Authorization: OAuth 00d038b699b74e76a01705918d48d939
X-Job-UUID: d0345d3ddcae485f8170572b15a2b581
X-Web-Hook: http://127.0.0.1:8989/rest-webhook
body:
{
"params": {
"name": "Zone1",
"description": "Test"
}
}http://127.0.0.1:8989/rest-webhook
POST http://127.0.0.1:8989/rest-webhook
headers:
X-Job-Success: true
X-Job-UUID: d0345d3ddcae485f8170572b15a2b581
body:
{
"inventory": {
"uuid": "f52fe55b64094ceb99b3893a238c4931",
"name": "Zone1",
"description": "Test",
"state": "Enabled",
"type": "zstack",
"createDate": "Jan 1, 2017 9:31:07 AM",
"lastOpDate": "Jan 1, 2017 9:31:07 AM"
}
}推送的结果之中,X-Job-Success指明了API执行成功与否,X-Job-UUID包含值跟API调用时的X-Job-UUID相同,调用者可以对应结果和API。