0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-10 23:36:14 -05:00

Fixed webhook payload

no issue

- async code was not handled
This commit is contained in:
kirrg001 2019-02-25 09:38:08 +01:00
parent 23fed961e5
commit 3459f38c09
3 changed files with 28 additions and 18 deletions

View file

@ -1,11 +1,17 @@
const serialize = require('./serialize'); const serialize = require('./serialize');
const Promise = require('bluebird');
module.exports = (event, model) => { module.exports = (event, model) => {
const payload = {}; const payload = {};
if (model) { if (model) {
Object.assign(payload, serialize(event, model)); return serialize(event, model)
} .then((result) => {
Object.assign(payload, result);
return payload; return payload;
});
}
return Promise.resolve(payload);
}; };

View file

@ -44,7 +44,7 @@ module.exports = (event, model) => {
}); });
} }
sequence(ops) return sequence(ops)
.then((results) => { .then((results) => {
const current = results[0]; const current = results[0];
const previous = results[1]; const previous = results[1];

View file

@ -68,7 +68,10 @@ module.exports = (event, model) => {
debug(`${webhooks.models.length} webhooks found for ${event}.`); debug(`${webhooks.models.length} webhooks found for ${event}.`);
_.each(webhooks.models, (webhook) => { _.each(webhooks.models, (webhook) => {
const reqPayload = JSON.stringify(payload(webhook.get('event'), model)); payload(webhook.get('event'), model)
.then((payload) => {
console.log(payload);
const reqPayload = JSON.stringify(payload);
const url = webhook.get('target_url'); const url = webhook.get('target_url');
const opts = { const opts = {
body: reqPayload, body: reqPayload,
@ -87,4 +90,5 @@ module.exports = (event, model) => {
.catch(response.onError(webhook)); .catch(response.onError(webhook));
}); });
}); });
});
}; };