亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

實現Vue和Flask通信的示例分析

發布時間:2021-05-20 09:34:46 來源:億速云 閱讀:351 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關實現Vue和Flask通信的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

安裝axios和實現通信

這里我們通過axios來連接Vue前端和Flask后端,使用AJAX請求進行通信。使用如下命令安裝

npm install axios

axios的使用格式:

import axios from 'axios';
  export default {
    data: function () {
      return {
        serverResponse: 'res_test'
      };
    },
    methods: {
      getData() {
        // 設置對應python的接口,這里使用的是localhost:5000
        const path = 'http://127.0.0.1:5000/getMsg';
        // 這里要使用 res =>表示返回的數據
        axios.get(path).then(res => {
          // 這里服務器返回response為一個json對象
          // 通過.data來訪返回的數據,然后在通過.變量名進行訪問
          // 可以直接通過response.data取得key-value
          var msg = res.data.msg;
          this.serverResponse = msg; // 因為不能直接使用this作為指針,因此在這之前將this賦給了then指針
          alter('Success' + response.status + ',' + response.data + ',' + msg); // 成功后顯示提示
        }).catch(error => {
          console.error(error);
        });
      }
    },
  }

代碼及演示

前端代碼

對./components/HelloWorld.vue文件進行改寫。代碼如下:

<!-- html部分 -->
<template>
  <div>
    <span>{{ serverResponse }}</span>
    <!--這里使用{{}}來引用JavaScript中賦給this的值-->
    <button @click="getData">get data</button>
  </div>
</template>
<!-- js部分 -->
<script>
  import axios from 'axios';
  export default {
    data: function () {
      return {
        serverResponse: 'res_test'
      };
    },
    methods: {
      getData() {
        // 設置對應python的接口,這里使用的是localhost:5000
        const path = 'http://127.0.0.1:5000/getMsg';
        axios.get(path).then(res => {
          // 這里服務器返回response為一個json對象
          // 通過.data來訪返回的數據,然后在通過.變量名進行訪問
          // 可以直接通過response.data取得key-value
          var msg = res.data.msg;
          this.serverResponse = msg; // 因為不能直接使用this作為指針,因此在這之前將this賦給了then指針
          alter('Success' + response.status + ',' + response.data + ',' + msg); // 成功后顯示提示
        }).catch(error => {
          console.error(error);
        });
      }
    },
  }
</script>
<!-- css部分 -->
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
  h2,
  h3 {
    font-weight: normal;
  }

  ul {
    list-style-type: none;
    padding: 0;
  }

  li {
    display: inline-block;
    margin: 0 10px;
  }

  a {
    color: #42b983;
  }
</style>

這里主要實現了通過單擊按鈕來和服務器端進行交互獲得數據并傳回前端,將得到的數據重新來對前端進行渲染。

實現Vue和Flask通信的示例分析

得到如上頁面之后,我們單擊get date按鈕,就會像后端發送GET請求,后端服務器監聽到請求之后就會返回對應的數據。

實現Vue和Flask通信的示例分析

客戶端代碼

from flask import Flask
from flask import jsonify
from flask_cors import CORS

app = Flask(__name__)
cors = CORS(app, resources={r"/getMsg": {"origins": "*"}})


@app.route('/')
def hello_world():
    return 'test!'

# 監聽127.0.0.1:5000/getMsg請求
@app.route('/getMsg', methods=['GET', 'POST'])
def home():
    response = {
        'msg': 'Hello, Python !'
    }
    return response


if __name__ == '__main__':
    app.run()

Vue的優點

Vue具體輕量級框架、簡單易學、雙向數據綁定、組件化、數據和結構的分離、虛擬DOM、運行速度快等優勢,Vue中頁面使用的是局部刷新,不用每次跳轉頁面都要請求所有數據和dom,可以大大提升訪問速度和用戶體驗。

感謝各位的閱讀!關于“實現Vue和Flask通信的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

搜索| 宜州市| 修水县| 广西| 榕江县| 碌曲县| 独山县| 仁寿县| 霍山县| 陇川县| 涟水县| 堆龙德庆县| 临泉县| 托克逊县| 儋州市| 牡丹江市| 盐源县| 阿图什市| 萝北县| 嘉兴市| 瓮安县| 屯门区| 繁昌县| 通许县| 炎陵县| 静安区| 辉南县| 武强县| 法库县| 姜堰市| 抚宁县| 洛扎县| 新密市| 大兴区| 泌阳县| 阜新市| 镇巴县| 肥西县| 临泽县| 宁安市| 河南省|