From 06723fdf204e41d685e1abbe0096f768390a0e14 Mon Sep 17 00:00:00 2001 From: Muhan Zou Date: Tue, 12 Apr 2016 17:11:59 -0400 Subject: [PATCH 1/2] add 'delete' alias for 'del', reduce ternary checking in the meantime --- README.md | 8 ++++++++ index.js | 8 ++++---- tests/test-defaults.js | 11 +++++++++++ 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 64c43e742..cdffb5ce7 100644 --- a/README.md +++ b/README.md @@ -888,6 +888,14 @@ Same as `request()`, but defaults to `method: "HEAD"`. request.head(url) ``` +### request.delete + +Same as `request()`, but defaults to `method: "DELETE"`. + +```js +request.delete(url) +``` + ### request.del Same as `request()`, but defaults to `method: "DELETE"`. diff --git a/index.js b/index.js index 4d0c748da..f2d710cea 100755 --- a/index.js +++ b/index.js @@ -56,7 +56,7 @@ function request (uri, options, callback) { } function verbFunc (verb) { - var method = verb === 'del' ? 'DELETE' : verb.toUpperCase() + var method = verb.toUpperCase() return function (uri, options, callback) { var params = initParams(uri, options, callback) params.method = method @@ -70,7 +70,7 @@ request.head = verbFunc('head') request.post = verbFunc('post') request.put = verbFunc('put') request.patch = verbFunc('patch') -request.del = verbFunc('del') +request.del = request.delete = verbFunc('delete') request.jar = function (store) { return cookies.jar(store) @@ -91,7 +91,7 @@ function wrapRequestMethod (method, options, requester, verb) { target.pool = params.pool || options.pool if (verb) { - target.method = (verb === 'del' ? 'DELETE' : verb.toUpperCase()) + target.method = verb.toUpperCase() } if (isFunction(requester)) { @@ -114,7 +114,7 @@ request.defaults = function (options, requester) { var defaults = wrapRequestMethod(self, options, requester) - var verbs = ['get', 'head', 'post', 'put', 'patch', 'del'] + var verbs = ['get', 'head', 'post', 'put', 'patch', 'del', 'delete'] verbs.forEach(function(verb) { defaults[verb] = wrapRequestMethod(self[verb], options, requester, verb) }) diff --git a/tests/test-defaults.js b/tests/test-defaults.js index 5b58304cf..afe845e16 100644 --- a/tests/test-defaults.js +++ b/tests/test-defaults.js @@ -138,6 +138,17 @@ tape('del(string, function)', function(t) { }) }) +tape('delete(string, function)', function(t) { + request.defaults({ + headers: {foo: 'bar'}, + json: true + }).delete(s.url + '/', function (e, r, b) { + t.equal(b.method, 'DELETE') + t.equal(b.headers.foo, 'bar') + t.end() + }) +}) + tape('head(object, function)', function(t) { request.defaults({ headers: { foo: 'bar' } From 865e981f2e36d79ef07a3c44f8e3470e6a7b89f2 Mon Sep 17 00:00:00 2001 From: simov Date: Fri, 15 Apr 2016 12:04:17 +0300 Subject: [PATCH 2/2] Fix support for delete method --- README.md | 11 ++--------- index.js | 3 ++- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index cdffb5ce7..00ac89ba2 100644 --- a/README.md +++ b/README.md @@ -888,20 +888,13 @@ Same as `request()`, but defaults to `method: "HEAD"`. request.head(url) ``` -### request.delete - -Same as `request()`, but defaults to `method: "DELETE"`. - -```js -request.delete(url) -``` - -### request.del +### request.del / request.delete Same as `request()`, but defaults to `method: "DELETE"`. ```js request.del(url) +request.delete(url) ``` ### request.get diff --git a/index.js b/index.js index f2d710cea..716938c1d 100755 --- a/index.js +++ b/index.js @@ -70,7 +70,8 @@ request.head = verbFunc('head') request.post = verbFunc('post') request.put = verbFunc('put') request.patch = verbFunc('patch') -request.del = request.delete = verbFunc('delete') +request.del = verbFunc('delete') +request['delete'] = verbFunc('delete') request.jar = function (store) { return cookies.jar(store)