Implementierung der Kommunikation zwischen Vue und Flask

Implementierung der Kommunikation zwischen Vue und Flask

axios installieren und Kommunikation implementieren

Hier verwenden wir Axios, um das Vue-Frontend und das Flask-Backend zu verbinden, und verwenden AJAX-Anfragen zur Kommunikation. Installieren Sie mit dem folgenden Befehl

npm installiere Axios

Das Nutzungsformat von Axios:

importiere Axios von „Axios“;
  Standard exportieren {
    Daten: Funktion () {
      zurückkehren {
        Serverantwort: „res_test“
      };
    },
    Methoden: {
      getData() {
        // Stellen Sie die entsprechende Python-Schnittstelle ein, hier verwenden wir localhost:5000
        const Pfad = "http://127.0.0.1:5000/getMsg";
        // Hier müssen wir res => verwenden, um die zurückgegebenen Daten darzustellen axios.get(path).then(res => {
          // Hier gibt der Server eine Antwort als JSON-Objekt zurück // Greifen Sie über .data auf die zurückgegebenen Daten zu und greifen Sie dann über .variable name darauf zu // Sie können den Schlüssel-Wert direkt über response.data abrufen
          var msg = res.data.msg;
          this.serverResponse = msg; // Da dies nicht direkt als Zeiger verwendet werden kann, wird dies dem then-Zeiger zugewiesen, bevor alter('Success' + response.status + ',' + response.data + ',' + msg); // Eingabeaufforderung nach Erfolg anzeigen }).catch(error => {
          konsole.fehler(fehler);
        });
      }
    },
  }

Code und Demo

Front-End-Code

Schreiben Sie die Datei ./components/HelloWorld.vue neu. Der Code lautet wie folgt:

<!-- html-Teil -->
<Vorlage>
  <div>
    <span>{{ Serverantwort }}</span>
    <!--{{}} wird hier verwendet, um auf den in JavaScript zugewiesenen Wert zu verweisen-->
    <button @click="getData">Daten abrufen</button>
  </div>
</Vorlage>
<!-- js-Teil -->
<Skript>
  importiere Axios von „Axios“;
  Standard exportieren {
    Daten: Funktion () {
      zurückkehren {
        Serverantwort: „res_test“
      };
    },
    Methoden: {
      getData() {
        // Stellen Sie die entsprechende Python-Schnittstelle ein, hier verwenden wir localhost:5000
        const Pfad = "http://127.0.0.1:5000/getMsg";
        axios.get(Pfad).then(res => {
          // Hier gibt der Server eine Antwort als JSON-Objekt zurück // Greifen Sie über .data auf die zurückgegebenen Daten zu und greifen Sie dann über .variable name darauf zu // Sie können den Schlüssel-Wert direkt über response.data abrufen
          var msg = res.data.msg;
          this.serverResponse = msg; // Da dies nicht direkt als Zeiger verwendet werden kann, wird dies dem then-Zeiger zugewiesen, bevor alter('Success' + response.status + ',' + response.data + ',' + msg); // Eingabeaufforderung nach Erfolg anzeigen }).catch(error => {
          konsole.fehler(fehler);
        });
      }
    },
  }
</Skript>
<!-- CSS-Teil -->
<!-- Fügen Sie das Attribut „scoped“ hinzu, um CSS nur auf diese Komponente zu beschränken -->
<Stilbereich>
  h1,
  h2 {
    Schriftstärke: normal;
  }

  ul {
    Listenstiltyp: keiner;
    Polsterung: 0;
  }

  li {
    Anzeige: Inline-Block;
    Rand: 0 10px;
  }

  A {
    Farbe: #42b983;
  }
</Stil>

Die Hauptimplementierung besteht hier darin, durch Klicken auf eine Schaltfläche mit dem Server zu interagieren, um Daten abzurufen und an das Front-End zurückzusenden, und dann das Front-End mit den abgerufenen Daten erneut zu rendern.

Abbildung 1

Nachdem wir die obige Seite erhalten haben, klicken wir auf die Schaltfläche „Datum abrufen“, wodurch eine GET-Anforderung an das Backend gesendet wird. Nachdem der Backend-Server die Anforderung überwacht hat, gibt er die entsprechenden Daten zurück.

Abbildung 2

Kundencode

aus Flasche importieren Flasche
aus Flask importieren Sie jsonify
von flask_cors importiere CORS

App = Flask(__name__)
cors = CORS(Anwendung, Ressourcen={r"/getMsg": {"Ursprünge": "*"}})


@app.route('/')
def hallo_welt():
    gib „Test!“ zurück

# Auf 127.0.0.1:5000/getMsg-Anfragen warten @app.route('/getMsg', methods=['GET', 'POST'])
def home():
    Antwort = {
        'msg': 'Hallo, Python!'
    }
    Antwort zurückgeben


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

Dies ist das Ende dieses Artikels über die Implementierung der Vue- und Flask-Kommunikation. Weitere relevante Inhalte zur Vue- und Flask-Kommunikation finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Acht Beispiele, wie Vue Komponentenkommunikation implementiert
  • Eine sehr detaillierte Zusammenfassung der Kommunikation zwischen Vue-Komponenten
  • Vue3.x verwendet mitt.js für die Komponentenkommunikation
  • Wie implementiert Vue die Kommunikation zwischen Komponenten?
  • Fallzusammenfassung zur Vue-Komponentenkommunikationsmethode

<<:  So verwenden Sie GeoIP, um Regionen in Nginx einzuschränken

>>:  Lösung für das Paging-Fehlerproblem bei MySQL-Eins-zu-viele-Assoziationsabfragen

Artikel empfehlen

JavaScript implementiert eine einzelne verknüpfte Listenprozessanalyse

Vorwort: Zum Speichern mehrerer Elemente sind Arr...

Analyse der MySQL-Absturzwiederherstellung basierend auf Redo Log und Undo Log

Inhaltsverzeichnis MySQL-Absturzwiederherstellung...

Detaillierte Erläuterung des Prinzips der Vue-Überwachungsdaten

Inhaltsverzeichnis 1. Einleitung II. Überwachungs...

So verwenden Sie MySQL, um die Datengenerierung in Excel abzuschließen

Excel ist das am häufigsten verwendete Tool zur D...

MySQL 5.6-Binärinstallationsprozess unter Linux

1.1 Download des binären Installationspakets wget...

Lösungen für das Problem der Tabellenschachtelung und Rahmenzusammenführung

【Frage】 Wenn die äußere und die innere Tabelle ve...

So konfigurieren Sie MGR Single Master und mehrere Slaves in MySQL 8.0.15

1. Einleitung MySQL Group Replication (kurz MGR) ...

So installieren Sie Docker und Portainer in Kali

Mit dem Aufkommen von Docker haben sich viele Die...

Mysql gibt die Methode zur Datumsbereichsextraktion an

Bei der Datenbankoperation ist der Umgang mit Dat...

Das WeChat-Applet implementiert einen einfachen Rechner

Ein einfacher Rechner, der als Referenz in das We...

Analysieren Sie, wie Uniapp den Schnittstellendomänennamen dynamisch erhält

Hintergrund Der Domänenname der Schnittstelle ist...