diff options
| author | Dave Kuhn | 2013-03-12 13:48:40 +1100 |
|---|---|---|
| committer | Dave Kuhn | 2013-03-12 13:48:40 +1100 |
| commit | 2bcb8ff12c967e71fb4871a9ac9e72395394d291 (patch) | |
| tree | ecc69c1fe1ad49a7b65fd53cc838461418361a60 /docs | |
| parent | 2e481f3318609fff5b884a09cbc9d2c5782deae4 (diff) | |
| download | django-rest-framework-2bcb8ff12c967e71fb4871a9ac9e72395394d291.tar.bz2 | |
Documentation for X-HTTP-Method-Override
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/topics/browser-enhancements.md | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/topics/browser-enhancements.md b/docs/topics/browser-enhancements.md index 6a11f0fa..8b191423 100644 --- a/docs/topics/browser-enhancements.md +++ b/docs/topics/browser-enhancements.md @@ -19,6 +19,23 @@ For example, given the following form: `request.method` would return `"DELETE"`. +## HTTP header based method overriding + +REST framework also supports method overriding via the `X-HTTP-Method-Override` +header. This is useful if you are working with non-form content such as +JSON and are working with an older web server and/or hosting provider +(e.g. [Amazon Web Services ELB][aws_elb]) that doesn't recognise particular +HTTP methods such as `PATCH`. + +For example, making a `PATCH` request via `POST` in jQuery: + + $.ajax({ + url: '/myresource/', + method: 'POST', + headers: {'X-HTTP-Method-Override': 'PATCH'}, + ... + }); + ## Browser based submission of non-form content Browser-based submission of content types other than form are supported by @@ -62,3 +79,4 @@ as well as how to support content types other than form-encoded data. [rails]: http://guides.rubyonrails.org/form_helpers.html#how-do-forms-with-put-or-delete-methods-work [html5]: http://www.w3.org/TR/html5-diff/#changes-2010-06-24 [put_delete]: http://amundsen.com/examples/put-delete-forms/ +[aws_elb]: https://forums.aws.amazon.com/thread.jspa?messageID=400724 |
