aboutsummaryrefslogtreecommitdiffstats
path: root/guides
diff options
context:
space:
mode:
authorajn123 <ajn123@vt.edu>2019-07-26 00:54:38 -0500
committerajn123 <ajn123@vt.edu>2019-07-26 00:54:38 -0500
commit85a08fe6719352b07ba21a7834cfb7c89b291238 (patch)
tree5430973ff40218bb313871efdd5ad315a8b57c4a /guides
parentf72118577dabd46c939a98437fdb031d9cd9c925 (diff)
downloadrails-85a08fe6719352b07ba21a7834cfb7c89b291238.tar.gz
rails-85a08fe6719352b07ba21a7834cfb7c89b291238.tar.bz2
rails-85a08fe6719352b07ba21a7834cfb7c89b291238.zip
[ci skip] add CSRF token explanation for javascript documentation
Diffstat (limited to 'guides')
-rw-r--r--guides/source/working_with_javascript_in_rails.md18
1 files changed, 18 insertions, 0 deletions
diff --git a/guides/source/working_with_javascript_in_rails.md b/guides/source/working_with_javascript_in_rails.md
index 8cf8efefd0..b740e933ba 100644
--- a/guides/source/working_with_javascript_in_rails.md
+++ b/guides/source/working_with_javascript_in_rails.md
@@ -14,6 +14,7 @@ After reading this guide, you will know:
* How Rails' built-in helpers assist you.
* How to handle Ajax on the server side.
* The Turbolinks gem.
+* How to include your Cross-Site Request Forgery token in request headers
-------------------------------------------------------------------------------
@@ -524,6 +525,23 @@ For more details, including other events you can bind to, check out [the
Turbolinks
README](https://github.com/turbolinks/turbolinks/blob/master/README.md).
+Cross-Site Request Forgery (CSRF) token in Ajax
+----
+
+When using another library to make Ajax calls, it is necessary to add
+the security token as a default header for Ajax calls in your library. To get
+the token:
+
+```javascript
+var token = document.getElementsByName('csrf-token')[0].content
+```
+
+You can then submit this token as a X-CSRF-Token in your header for your
+Ajax requst. You do not need to add a CSRF for GET requests, only non-GET
+requests.
+
+You can read more about about Cross-Site Request Forgery in [Security](https://guides.rubyonrails.org/security.html#cross-site-request-forgery-csrf)
+
Other Resources
---------------