脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Django中针对基于类的视图添加csrf_exempt实例代码

Django中针对基于类的视图添加csrf_exempt实例代码

2021-01-15 00:14kongxx Python

这篇文章主要介绍了Django中针对基于类的视图添加csrf_exempt实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下

Django中对于基于函数的视图我们可以 @csrf_exempt 注解来标识一个视图可以被跨域访问。那么对于基于类的视图,我们应该怎么办呢?

简单来说可以有两种访问来解决

方法一

在类的 dispatch 方法上使用 @csrf_exempt

?
1
2
3
4
5
6
7
8
9
10
11
12
13
from django.views.decorators.csrf import csrf_exempt
 
class 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 中配置

?
1
2
3
4
5
6
7
from django.conf.urls import url
from django.views.decorators.csrf import csrf_exempt
import views
 
urlpatterns = [
  url(r'^myview/$', csrf_exempt(views.MyView.as_view()), name='myview'),
]

总结

以上就是本文关于Django中针对基于类的视图添加csrf_exempt实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

原文链接:http://blog.csdn.net/kongxx/article/details/77322657

延伸 · 阅读

精彩推荐