中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

django解決跨域問題的方法

發布時間:2020-08-07 11:09:58 來源:億速云 閱讀:329 作者:小新 欄目:編程語言

小編給大家分享一下django解決跨域問題的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

django解決跨域問題,具體如下

1.安裝django-cors-headers

pip3 install django-cors-headers

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.使用JSONP

使用Ajax獲取json數據時,存在跨域的限制。不過,在Web頁面上調用js的script腳本文件時卻不受跨域的影響,JSONP就是利用這個來實現跨域的傳輸。因此,我們需要將Ajax調用中的dataType從JSON改為JSONP(相應的API也需要支持JSONP)格式。 
JSONP只能用于GET請求。

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 response

看完了這篇文章,相信你對django解決跨域問題的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凌云县| 华容县| 灵丘县| 武穴市| 清丰县| 宁河县| 涪陵区| 长治市| 北碚区| 托里县| 岱山县| 永安市| 安义县| 连江县| 闽侯县| 南汇区| 松江区| 宁都县| 靖宇县| 九台市| 威宁| 天水市| 双辽市| 韩城市| 景洪市| 宣城市| 大洼县| 射洪县| 全南县| 稻城县| 凌海市| 南宁市| 迭部县| 柳河县| 泌阳县| 车致| 溧阳市| 岳阳市| 桑日县| 家居| 厦门市|