Django / Django Rest Framework - 禁用CSRF

时间:2017-02-14 15:02:39

标签: python django django-rest-framework postman django-csrf

我正在寻找一种简单的方法来禁用所有CSRF验证,以便在Postman中测试我的API。

直到现在我尝试添加@decorator csrf_exempt但没有成功。 我也试过在应用程序中创建一个disable.py文件,但也没有用。

此外,我想要为所有请求停用,所以有些方法不必在任何地方添加装饰器。这个我刚刚获得的项目已经在制作中,但我想先在Postman,后来的TestCases中开始编写测试。

我的所有观点都使用“api_generics.CRUDGeneric”,

该类的声明是:

class CRUDGeneric(mixins.CreateModelMixin, mixins.ListModelMixin, mixins.RetrieveModelMixin,
                  mixins.DestroyModelMixin, mixins.UpdateModelMixin, viewsets.GenericViewSet):

谢谢是建议

1 个答案:

答案 0 :(得分:4)

@ 62009030你应该能够做@smarber提到的事情..这也可行..这是一种遍历的方式来添加csrf_exempt

from django.conf.urls import patterns, url
from django.views.decorators.csrf import csrf_exempt

import views

urlpatterns = patterns('',
    url('^asimpleurl/$', csrf_exempt(views.CRUDGeneric.as_view())),
    ...
)

这可能是解决问题的方法..