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

So stellen Sie mit Docker ein einfaches C/C++-Programm bereit

1. Erstellen Sie zunächst eine Datei hello-world....

Spezifische Verwendung des Linux-gcc-Befehls

01. Befehlsübersicht Der Befehl gcc verwendet den...

Schritte zum Ändern des MySQL-Zeichensatzes auf UTF8 unter Linux

Inhaltsverzeichnis 1. Überprüfen Sie den MySQL-St...

Implementierung eines einfachen Karussells auf Basis von JavaScript

In diesem Artikel wird der spezifische JavaScript...

Einführung in die Benutzerverwaltung unter Linux-Systemen

Inhaltsverzeichnis 1. Die Bedeutung von Nutzern u...

Element Tabelle Tabellenkomponente Mehrfeld (Mehrspalten) Sortiermethode

Inhaltsverzeichnis brauchen: Aufgetretene Problem...

MYSQL METADATA LOCK (MDL LOCK) MDL-Sperrproblemanalyse

1. Einleitung MDL-Sperren in MySQL haben schon im...

Einfaches Docker Swarm-Tutorial

Schwarm drei virtuelle Maschinen 132,133,134 1. I...

HTML-Tutorial: Sammlung häufig verwendeter HTML-Tags (5)

Diese eingeführten HTML-Tags entsprechen nicht un...