在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