diff --git a/src/Nodes/FunctionNodes/HttpDriver/HttpNode.js b/src/Nodes/FunctionNodes/HttpDriver/HttpNode.js index bb01b97..cc8976a 100644 --- a/src/Nodes/FunctionNodes/HttpDriver/HttpNode.js +++ b/src/Nodes/FunctionNodes/HttpDriver/HttpNode.js @@ -101,7 +101,7 @@ class HttpNode { const params = self.queryParameters, url = self.urlWithParameters, - body = (operation === 'get') ? (null) : (self.args['body'] || ""), + body = (operation === 'get') ? (null) : (self.args['body'] || null), form = (operation === 'get') ? (null) : (self.args['form'] || null), json = (operation === 'get') ? (null) : (self.args['json'] || null), headers = { ...ops.Http['headers'], ...self.args['headers'] } || {}, diff --git a/src/Nodes/FunctionNodes/HttpDriver/test/http.js b/src/Nodes/FunctionNodes/HttpDriver/test/http.js index 61dc534..2822f72 100644 --- a/src/Nodes/FunctionNodes/HttpDriver/test/http.js +++ b/src/Nodes/FunctionNodes/HttpDriver/test/http.js @@ -66,4 +66,28 @@ module.exports = () => { assert.equal(res.url, "https://httpbin.org/post"); }).timeout(10000); }); + + describe('delete request', () => { + it('should perform delete request without a body', async () => { + let n = new HttpNode('Http.delete', [], { + url: "https://httpbin.org/delete" + }); + + let res = await n.eval({}, {}); + assert.equal(res.url, "https://httpbin.org/delete"); + }).timeout(10000); + + it('should perform delete request with a json body', async () => { + let n = new HttpNode('Http.delete', [], { + url: "https://httpbin.org/delete", + json: { + id: 42 + } + }); + + let res = await n.eval({}, {}); + assert.equal(res.json.id, 42); + assert.equal(res.url, "https://httpbin.org/delete"); + }).timeout(10000); + }); }; \ No newline at end of file