徹底解決django跨域問題

2021-09-02 08:05:31 字數 1105 閱讀 8315

1.何謂跨域?後端介面訪問位址是這個,你卻偏要用其他網域名稱來訪問,這就產生了跨域.

2.如何解決?前端想跨域訪問時,首先傳送乙個option請求詢問後端是否允許你跨域,若允許,後端返回響應告知.前端再次把請求傳送過來,後端進行處理.

3.django後端如何處理跨域?

第一步,安裝第三方擴充套件:

pip install django-cors-headers
第二步,新增應用:

...'corsheaders',

...)

第三步,中介軟體處理,注意放在第一條,第一時間進行處理:

middleware = [

'corsheaders.middleware.corsmiddleware',

...]

第四步,配置訪問規則或白名單:

# 允許所有網域名稱跨域(優先選擇)

cors_origin_allow_all = true

# 或配置白名單:

# cors_origin_whitelist = (

# '*'

# # '127.0.0.1:8000',

# # 'localhost:8000',

# # '127.0.0.1:8080',

# # 'localhost:8080',

# # 'ads-cms-api.aataotao.com:8000' #

# # 'taoduoduo-test.oss-cn-shenzhen.aliyuncs.com:80', # 線上

# # '10.0.2.187:8080' # 本地

# )

第五步,允許攜帶cookie:

cors_allow_credentials = true

4.注意乙個重要問題:

如果使用了nginx,注意正確配置.

sudo vim /usr/local/nginx/conf/nginx.conf
location /

proxy_pass

}

Django後端徹底解決跨域問題

最近在接乙個前後端分離的專案,後端使用的django restframework,前端使用的vue。後端跑起來後,發現前端在訪問後端api時出了了跨域的問題。關於跨域問題,之前這篇文章也提到過 一 前後端互動之ajax及跨域問題,當時裡面是使用的jsonp方式,但是jsonp只支援get方法,不能全...

Django解決跨域問題

第一步安裝django cors headers,官方文件 pip install django cors headers corsheaders 第三步在middleware classes中新增corsmiddleware,放的盡可能靠前,必須在csrfviewmiddleware之前。midd...

django解決跨域問題

近期的專案要用python的django mysql實現,以前從來沒接觸過python,這次專案實踐算是對自己的乙個挑戰和提公升。經過一番猛如虎的操作,python環境,django和mysql也都安裝好了 其中的大坑以後再說 這次記錄一下解決跨域的問題,因為對於初學者的我來說是非常容易遺忘的。dj...