时间:2021-05-22
在Django中对于基于函数的视图我们可以 @csrf_exempt 注解来标识一个视图可以被跨域访问。那么对于基于类的视图,我们应该怎么办呢?
简单来说可以有两种访问来解决
在类的 dispatch 方法上使用 @csrf_exempt
from django.views.decorators.csrf import csrf_exemptclass MyView(View): def get(self, request): return HttpResponse("hi") def post(self, request): return HttpResponse("hi") @csrf_exempt def dispatch(self, *args, **kwargs): return super(MyView, self).dispatch(*args, **kwargs)在 urls.py 中配置
from django.conf.urls import urlfrom django.views.decorators.csrf import csrf_exemptimport viewsurlpatterns = [ url(r'^myview/$', csrf_exempt(views.MyView.as_view()), name='myview'),]以上就是本文关于Django中针对基于类的视图添加csrf_exempt实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Django中的csrf认证实现的原理调用process_view方法检查视图是否被@csrf_exempt(免除csrf认证)-去请求体或cookie中获取t
第一种方法,在视图函数上边添加一条语句@csrf_exempt例子:@csrf_exemptdeflogin(request):returnrender_to_
django程序,需要写很多api,每个函数都需要几个装饰器,例如复制代码代码如下:@csrf_exempt@require_POSTdeffoo(reques
django-rest-framework类视图拓展自django的类视图,只是针对数据的序列化和反序列化等逻辑做了封装。django-rest-framewo
在对Django的视图有所了解后,我们进一步对视图的分类进行讨论。视图有两种类型,划分为基于功能的视图和基于类的视图,两种视图在功能和使用上各有不同。我们需要对