Python使用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', )
OK!問題解決!
其他解決方案
另外還從網(wǎng)上看到其他兩種解決方案,但都不太合適。在此列出,供大家參考
1.使用JSONP
使用Ajax獲取json數(shù)據(jù)時(shí),存在跨域的限制。不過,在Web頁面上調(diào)用js的script腳本文件時(shí)卻不受跨域的影響,JSONP就是利用這個(gè)來實(shí)現(xiàn)跨域的傳輸。因此,我們需要將Ajax調(diào)用中的dataType從JSON改為JSONP(相應(yīng)的API也需要支持JSONP)格式。
JSONP只能用于GET請求。
2.直接修改Django中的views.py文件
修改views.py中對應(yīng)API的實(shí)現(xiàn)函數(shù),允許其他域通過Ajax請求數(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
到此這篇關(guān)于Python使用django解決跨域請求的問題的文章就介紹到這了,更多相關(guān)Python django解決跨域請求內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中OpenCV實(shí)現(xiàn)查找輪廓的實(shí)例
本文將結(jié)合實(shí)例代碼,介紹 OpenCV 如何查找輪廓、獲取邊界框。具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06Python實(shí)現(xiàn)對數(shù)坐標(biāo)系繪制與自定義映射
這篇文章主要為大家學(xué)習(xí)介紹了如何利用Python實(shí)現(xiàn)對數(shù)坐標(biāo)系繪制與坐標(biāo)自定義映射,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-08-08PyQt5 QLineEdit輸入的子網(wǎng)字符串校驗(yàn)QRegExp實(shí)現(xiàn)
這篇文章主要介紹了PyQt5 QLineEdit輸入的子網(wǎng)字符串校驗(yàn)QRegExp實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04Python實(shí)現(xiàn)list反轉(zhuǎn)實(shí)例匯總
這篇文章主要介紹了Python實(shí)現(xiàn)list反轉(zhuǎn)的方法,實(shí)例總結(jié)了關(guān)于list的各種較為常見的操作技巧,需要的朋友可以參考下2014-11-11Python實(shí)現(xiàn)Windows上氣泡提醒效果的方法
這篇文章主要介紹了Python實(shí)現(xiàn)Windows上氣泡提醒效果的方法,涉及Python針對windows窗口操作的相關(guān)技巧,需要的朋友可以參考下2015-06-06Python+imbox庫實(shí)現(xiàn)郵件讀取與刪除和附件下載
這篇文章主要為大家詳細(xì)介紹了Python如何使用imbox庫實(shí)現(xiàn)郵件讀取與刪除以及附件下載,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2025-02-02Python讀取和寫入txt、Excel文件和JSON文件的方法
Python 提供了多種方法來讀取和寫入不同類型的文件,包括文本文件(txt)、Excel 文件和 JSON 文件,本文給大家介紹了一些常用的方法和示例代碼,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-07-07