4、解決flask的跨域問題
問題引入:來自8080伺服器的js中的動態介面請求,沒能夠真正傳送給8000動態伺服器;為什麼會這樣?!
url瀏覽器判斷是否同源的乙個隱含規則:只判斷協議、網域名稱和埠的字面值;
答:來自a伺服器的js,請求的目標是b伺服器,那麼這個請求稱之為跨域請求!
答:當瀏覽器處理乙個跨域請求的時候,會主動詢問目標主機是否允許此次跨域請求,在得到肯定答覆之後才會真的傳送此次跨域請求!
安裝外掛程式django-cors-headers
pip install django-cors-headers -i
3.2、修改工程配置檔案allowed_hosts =
['*'][
# ......
# 註冊第三方應用
'corsheaders'
,# 解決了跨域請求問題
# ......
]middleware =
[# 新增乙個中介軟體來響應跨域詢問options請求
'corsheaders.middleware.corsmiddleware'
,# ......
]# 新增跨域白名單,指定允許跨域請求到8000的源
cors_origin_whitelist =
['',''
,# 注意,即使在hosts檔案映**127.0.0.1 www.meiduo.site,兩者依然不是同源,只認字面值
]# 或者使用:cors_origin_allow_all = true,表示允許所有跨域請求
# 表示跨域的多個主機之間共享cookie資料
cors_allow_credentials =
true
3.3、主機網域名稱對映配置:
開啟終端——使用vim
開啟 /etc/hosts檔案:
在最後增加:127.0.0.1 www.meiduo.site
1
127.0
.0.1 localhost
2127.0
.1.1 ubuntu
34# the following lines are desirable for ipv6 capable hosts5:
:1 ip6-localhost ip6-loopback
6 fe00:
:0 ip6-localnet
7 ff00:
:0 ip6-mcastprefix
8 ff02:
:1 ip6-allnodes
9 ff02:
:2 ip6-allrouters
100.0
.0.0 account.jetbrains.com
1112
13127.0
.0.1 www.meiduo.site
4.1 flask元件flask-cors
可以處理跨域問題, 安裝
pip install flask-cors -i
from flask_cors import cors
# 6.允許跨域請求
# supports_credentials=true 支援跨域的時候攜帶cookie,session,token
# methods= 允許跨域的請求方法 預設:全部請求方法都允許跨域
# cors_origins = [''] # 限定允許訪問的網域名稱, 不設定則全部允許
true
)
flask和django的 比較
1 flask flask確實很 輕 不愧是micro framework,從django轉向flask的開發者一定會如此感慨,除非二者均為深入使用過 flask自由 靈活,可擴充套件性強,第三方庫的選擇面廣,開發時可以結合自己最喜歡用的輪子,也能結合最流行最強大的python庫 入門簡單,即便沒有...
python中django和flask的比較
眾所周知,django框架是重量級的,flask是輕量級,為甚麼有輕重之分,要從多方面來剖析 flask 燒瓶 1 在python中flask就是輕量級的代名詞,靈活度很高。2 flask中有豐富的第三方庫,使用什麼庫,安裝什麼庫。3 flask易入門,適合開發小型 4 開發大型 架構設計會比較複雜...
Django和Flask中的模板和標籤
父模板 負責挖坑,挖的坑可以被子模板動態填充的內容 子模板 繼承于父模板,並且動態填充坑的內容 繼承 包含 獲取坑之前填充的內容 載入靜態檔案 硬編碼 指定定義靜態檔案的路徑 static css index.css 使用url for進行解析 迴圈 迴圈編號 從0開始計數 逆向計數 第一次迴圈是t...