Django:在从rest客户端发出POST请求时设置csrf令牌

时间:2014-03-03 08:41:10

标签: django rest django-csrf

我正在使用chrome rest客户端来测试api调用。

GET请求工作正常,但在发出POST请求时,获得403 hidden响应。 描述是

CSRF verification failed. Request aborted

我设置为Content-Type=application/json

一种方法是使用@csrf_extempt,但似乎是不错的选择。

如何解决上述问题?

2 个答案:

答案 0 :(得分:3)

在为网站提供API时,使用@csrf_extempt实际上是一种很好的做法。跨站请求伪造是csrf是什么,但在你的情况下它不会是伪造,因为api可以(应该)从任何网站调用,但你的。 。 此外,共享csrf令牌将被证明是非常棘手的。

答案 1 :(得分:0)

在请求中,包含一个 X-CSRFToken 标头,其中包含从 csrftoken cookie获取的CSRF标记值。