django 解决cors问题

AFei0018-博客

穷则思变,差则思勤。Python技术交流|求职招聘群:551022575javascript

django解决跨域请求的问题

django解决跨域请求的问题

解决方案

1.安装django-cors-headers

pip install django-cors-headers
  • 1

2.配置settings.py文件

INSTALLED_APPS = [
    ...
    'corsheaders', ... ] MIDDLEWARE_CLASSES = ( ... 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', # 注意顺序 ... ) #跨域增长忽略 CORS_ALLOW_CREDENTIALS = True CORS_ORIGIN_ALLOW_ALL = True CORS_ORIGIN_WHITELIST = ( '*' ) CORS_ALLOW_METHODS = ( 'DELETE', 'GET', 'OPTIONS', 'PATCH', 'POST', 'PUT', 'VIEW', ) CORS_ALLOW_HEADERS = ( 'XMLHttpRequest', 'X_FILENAME', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', 'Pragma', ) 
  • 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
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43

OK!问题解决!html

其余解决方案

另外还从网上看到其余两种解决方案,但都不太合适。在此列出,供你们参考前端

1.使用JSONP

使用Ajax获取json数据时,存在跨域的限制。不过,在Web页面上调用js的script脚本文件时却不受跨域的影响,JSONP就是利用这个来实现跨域的传输。所以,咱们须要将Ajax调用中的dataType从JSON改成JSONP(相应的API也须要支持JSONP)格式。 
JSONP只能用于GET请求。vue

2.直接修改Django中的views.py文件

修改views.py中对应API的实现函数,容许其余域经过Ajax请求数据: 
def myview(_request): 
response = HttpResponse(json.dumps({“key”: “value”, “key2”: “value”})) 
response[“Access-Control-Allow-Origin”] = “*” 
response[“Access-Control-Allow-Methods”] = “POST, GET, OPTIONS” 
response[“Access-Control-Max-Age”] = “1000” 
response[“Access-Control-Allow-Headers”] = “*” 
return responsejava

版权声明:本文为博主原创文章,未经博主容许不得转载。 https://blog.csdn.net/apple9005/article/details/54427902
文章标签: django跨域请求
我的分类: pythondjango
想对做者说点什么?  我来讲一句
  • u012695283
    Tyler_ 2018-04-18 15:35:44#5楼
    “咱们须要将Ajax调用中的dataType从JSON改成JSONP(相应的API也须要支持JSONP)格式。” 括号里那句话把我从梦中惊醒!!!谢谢您!!
     
  • yyy72999
    小恩阿 2018-03-09 15:55:17#4楼
    可贵评论,这个方法很管用 本人用的是 React + Antd + Django ajax 用的axios options方法请求 能够!
     
  • Ashimar_a
    Ashimar_ZHZ 2017-11-10 11:33:12#3楼
    谢谢博主分享
     
  • s1054436218
    Unname_Bao 2017-10-28 16:03:37#2楼
    添加也没用
     
定了! 中国重工 加速重组,3股有望逆市大涨!(附名单)磐公股市 · 顶新
定金1元抵618京东

我的资料

原创
84
粉丝
17
喜欢
92
评论
34
等级:
 
访问:
 
16万+
积分:
 
2520
排名:
 
1万+
勋章:

最新评论

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
 
相关文章
相关标签/搜索