Django/Django Rest 框架 - 禁用 CSRF
Posted
技术标签:
【中文标题】Django/Django Rest 框架 - 禁用 CSRF【英文标题】:Django/Django Rest Framework - Disable CSRF 【发布时间】:2017-07-02 22:30:23 【问题描述】:我正在寻找一种简单的方法来禁用所有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):
谢谢建议
【问题讨论】:
可以帮助***.com/a/30875830/1507546 我试过了,但它并没有解决我的问题,我遇到了其他错误 我认为你应该用这些错误更新你的帖子 【参考方案1】:@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())),
...
)
这可以解决您的问题..
【讨论】:
以上是关于Django/Django Rest 框架 - 禁用 CSRF的主要内容,如果未能解决你的问题,请参考以下文章
在 Django Rest 框架中处理 Paypal 付款/结帐
Django 测试休息框架:APIRequestFactory vs APIClient
django-rest-auth + django-allauth + angular2
从 Django django-rest-framework 视图有条件地返回 JSON 或 HTML 响应