flask如何請求別的網站
跨域檔案上傳的時候,瀏覽器會自動發起一個 OPTIONS 方法到伺服器,現在後臺解決前端跨域解決前端跨域請求的問題。
客戶端發起的這個 OPTIONS 可以說是一個“預請求”,用於探測後續真正需要發起的跨域 POST 請求對於伺服器來說是否是安全可接受的,因為跨域提交資料對於伺服器來說可能存在很大的安全問題。
請求頭 Access-Control-Request-Method 用於提醒伺服器在接下來的請求中將會使用什麼樣的方法來發起請求。
Access-Control-Allow-Method 和 Access-Control-Allow-Origin 分別告知客戶端,伺服器允許客戶端用於跨域的方法和域名。
示例
下載flask_cors 包
pip install flask-cors
使用flask_cors的CORS,程式碼示例
from flask_cors import * app = Flask(__name__) CORS(app, supports_credentials=True)
實現
現在我們看看解決問題的實際案例
from flask_cors import CORS app = Flask(__name__,) # r'/*' 是萬用字元,讓本伺服器所有的URL 都允許跨域請求 CORS(app, resources=r'/*') # 上傳檔案 @uploadFiles.route('/upload', methods=['POST']) def uploadFile(): result_text = {"statusCode": 200,"message": "檔案上傳成功"} response = make_response(jsonify(result_text)) response.headers['Access-Control-Allow-Origin'] = '*' response.headers['Access-Control-Allow-Methods'] = 'OPTIONS,HEAD,GET,POST' response.headers['Access-Control-Allow-Headers'] = 'x-requested-with' return response
目中路由是多級路由,透過主路由跳轉到子路由,一開始的時候,允許跨域的配置在上傳檔案的子路由中進行設定,發現OPTIONS請求響應值中並沒有返回預期的標頭檔案,將跨域設定在主路由中設定即可。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2331/viewspace-2836947/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何使flask允許跨域請求Flask跨域
- Flask——請求資料Flask
- [譯]Flask教程–請求物件Flask物件
- flask 原始碼解析:請求Flask原始碼
- 網站http請求狀態碼網站HTTP
- 如何使用Flask編寫一個網站Flask網站
- 如何根據介面請求型別和請求方法,自動執行對應請求型別
- Flask中請求資料的優雅傳遞Flask
- 請求重定向和請求轉發的區別
- get請求和post請求的區別
- 一個HTTP請求,把網站打裂開了HTTP網站
- SpringMVC中如何傳送GET請求、POST請求、PUT請求、DELETE請求。SpringMVCdelete
- Facebook 這類網站如何處理數十億請求並保持高可用性的?網站
- flask路由系統、偏函式、CBV、模板、請求響應、session、請求擴充套件Flask路由函式Session套件
- 小程式https請求,http網站升到httpsHTTP網站
- 網站加速最佳實踐 – 減少HTTP請求數網站HTTP
- 網站提示408 請求超時怎麼辦網站
- 網路請求優化之取消請求優化
- 網站提示400 - 請求錯誤,伺服器無法理解客戶端的請求怎麼辦網站伺服器客戶端
- Android網路請求(終) 網路請求框架RetrofitAndroid框架
- Android網路請求(3) 網路請求框架OkHttpAndroid框架HTTP
- CSRF - 跨站請求偽造
- Flask中的請求上下文和應用上下文Flask
- 瀏覽器的小改進讓 Facebook 網站減少 60% 的網路請求瀏覽器網站
- get與post的請求區別
- 型別安全的 Go HTTP 請求型別GoHTTP
- 如何使用 Python 請求網路資源Python
- 如何避免舊請求的資料覆蓋掉最新請求
- Android網路請求(4) 網路請求框架VolleyAndroid框架
- Laravel 是如何請求 Request 的Laravel
- 2018-08-21網站請求+BUG定位網站
- 大型網站最佳化技術:減少HTTP請求網站HTTP
- 減少HTTP請求(大型網站最佳化技術)HTTP網站
- 網站提示400錯誤:錯誤請求怎麼辦網站
- 網路請求了
- 網頁請求(Ajax)網頁
- 請問公司網站如何修改電話網站
- 如何使用策略模式處理多種型別請求模式型別