django解決跨域請(qǐng)求的問(wèn)題
解決方案
1.安裝django-cors-headers
pip 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', )
OK!問(wèn)題解決!
其他解決方案
另外還從網(wǎng)上看到其他兩種解決方案,但都不太合適。在此列出,供大家參考
1.使用JSONP
使用Ajax獲取json數(shù)據(jù)時(shí),存在跨域的限制。不過(guò),在Web頁(yè)面上調(diào)用js的script腳本文件時(shí)卻不受跨域的影響,JSONP就是利用這個(gè)來(lái)實(shí)現(xiàn)跨域的傳輸。因此,我們需要將Ajax調(diào)用中的dataType從JSON改為JSONP(相應(yīng)的API也需要支持JSONP)格式。
JSONP只能用于GET請(qǐng)求。
2.直接修改Django中的views.py文件
修改views.py中對(duì)應(yīng)API的實(shí)現(xiàn)函數(shù),允許其他域通過(guò)Ajax請(qǐng)求數(shù)據(jù):
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
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 使用Flask和Django中解決跨域請(qǐng)求問(wèn)題
- Django跨域請(qǐng)求原理及實(shí)現(xiàn)代碼
- 簡(jiǎn)單了解django處理跨域請(qǐng)求最佳解決方案
- Django+uni-app實(shí)現(xiàn)數(shù)據(jù)通信中的請(qǐng)求跨域的示例代碼
- django基于cors解決跨域請(qǐng)求問(wèn)題詳解
- Django中使用CORS實(shí)現(xiàn)跨域請(qǐng)求過(guò)程解析
- Django實(shí)現(xiàn)跨域請(qǐng)求過(guò)程詳解
- django解決跨域請(qǐng)求的問(wèn)題詳解
- Django跨域請(qǐng)求CSRF的方法示例
- Django跨域請(qǐng)求無(wú)法傳遞Cookie的解決
相關(guān)文章
Python基于滑動(dòng)平均思想實(shí)現(xiàn)缺失數(shù)據(jù)填充的方法
今天小編就為大家分享一篇關(guān)于Python基于滑動(dòng)平均思想實(shí)現(xiàn)缺失數(shù)據(jù)填充的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02通過(guò)Python繪制中國(guó)結(jié)的示例代碼
再過(guò)不久就要到新年了,所以這篇文章將為大家介紹一下如何通過(guò)Python代碼繪制一個(gè)中國(guó)結(jié),文中的示例代碼講解詳細(xì),感興趣的可以動(dòng)手試一試2022-01-01python tkinter的消息框模塊(messagebox,simpledialog)
這篇文章主要介紹了python tkinter的消息框模塊,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-11-11Python實(shí)現(xiàn)的十進(jìn)制小數(shù)與二進(jìn)制小數(shù)相互轉(zhuǎn)換功能
這篇文章主要介紹了Python實(shí)現(xiàn)的十進(jìn)制小數(shù)與二進(jìn)制小數(shù)相互轉(zhuǎn)換功能,結(jié)合具體實(shí)例形式詳細(xì)分析了二進(jìn)制與十進(jìn)制相互轉(zhuǎn)換的原理及Python相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-10-10