设置一个中间件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class  MiddlewareMixin( object ):
     def  __init__( self , get_response = None ):
         self .get_response  =  get_response
         super (MiddlewareMixin,  self ).__init__()
 
     def  __call__( self , request):
         response  =  None
         if  hasattr ( self 'process_request' ):
             response  =  self .process_request(request)
         if  not  response:
             response  =  self .get_response(request)
         if  hasattr ( self 'process_response' ):
             response  =  self .process_response(request, response)
         return  response
 
class  CORSMiddleware(MiddlewareMixin):
 
     def  process_response( self ,request,response):
         # 添加响应头
 
         # 允许你的域名来获取我的数据
         response[ 'Access-Control-Allow-Origin' =  "*"
 
         # 允许你携带Content-Type请求头
         response[ 'Access-Control-Allow-Headers' =  "Content-Type"
 
         # 允许你发送DELETE,PUT
         response[ 'Access-Control-Allow-Methods' =  "DELETE,PUT"
 
         return  response 
1
MiddlewareMixin是从源码copy过来的,自己有直接用自己的。

别忘了在setting里面配置。