mirror of
https://github.com/koush/scrypted.git
synced 2026-05-05 22:00:27 +01:00
webhook: ensure response is sent before onRequest returns
This commit is contained in:
4
plugins/webhook/package-lock.json
generated
4
plugins/webhook/package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "@scrypted/webhook",
|
||||
"version": "0.0.21",
|
||||
"version": "0.0.22",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@scrypted/webhook",
|
||||
"version": "0.0.21",
|
||||
"version": "0.0.22",
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"@types/node": "^16.6.1"
|
||||
|
||||
@@ -35,5 +35,5 @@
|
||||
"devDependencies": {
|
||||
"@scrypted/sdk": "file:../../sdk"
|
||||
},
|
||||
"version": "0.0.21"
|
||||
"version": "0.0.22"
|
||||
}
|
||||
|
||||
@@ -120,14 +120,14 @@ class WebhookMixin extends SettingsMixinDeviceBase<Settings> {
|
||||
});
|
||||
}
|
||||
else {
|
||||
this.maybeSendMediaObject(response, result, methodOrProperty);
|
||||
await this.maybeSendMediaObject(response, result, methodOrProperty);
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
this.console.error('webhook action error', e);
|
||||
response.send('Internal Error', {
|
||||
code: 500,
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
else if (allInterfaceProperties.includes(methodOrProperty)) {
|
||||
@@ -147,7 +147,7 @@ class WebhookMixin extends SettingsMixinDeviceBase<Settings> {
|
||||
this.console.error('Unknown method or property', methodOrProperty);
|
||||
response.send('Not Found', {
|
||||
code: 404,
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -183,7 +183,7 @@ class WebhookPlugin extends ScryptedDeviceBase implements Settings, MixinProvide
|
||||
});
|
||||
return;
|
||||
}
|
||||
mixin.handle(request, response, device, pathSegments);
|
||||
await mixin.handle(request, response, device, pathSegments);
|
||||
}
|
||||
|
||||
onRequest(request: HttpRequest, response: HttpResponse): Promise<void> {
|
||||
|
||||
Reference in New Issue
Block a user