So erstellen Sie eine Webanwendung mit Flask und stellen sie in der Cloud bereit

Foto von Blake Connally auf Unsplash

Einführung

In jedem Abschnitt zeige ich Code-Teile, denen Sie folgen können. Der gesamte im Tutorial verwendete Code ist in diesem GitHub-Repository verfügbar.

Was ist HTTP und was hat es mit Flask zu tun?

HTTP ist das Protokoll für Websites. Das Internet nutzt es, um mit Computern und Servern zu interagieren und zu kommunizieren. Lassen Sie mich Ihnen ein Beispiel geben, wie Sie es jeden Tag benutzen.

Wenn Sie den Namen einer Website in die Adressleiste Ihres Browsers eingeben und die Eingabetaste drücken. Es wurde eine HTTP-Anfrage an einen Server gesendet.

Wenn ich zum Beispiel in meine Adressleiste gehe und google.com eingebe und dann die Eingabetaste drücke, wird eine HTTP-Anfrage an einen Google Server gesendet. Der Google Server erhält die Anfrage und muss herausfinden, wie diese Anfrage zu interpretieren ist. Der Google Server sendet eine HTTP-Antwort zurück, die die Informationen enthält, die mein Webbrowser empfängt. Anschließend wird im Browser auf einer Seite angezeigt, wonach Sie gefragt haben.

Wie ist Flask beteiligt?

Wir werden Code schreiben, der sich um die serverseitige Verarbeitung kümmert. Unser Code wird Anfragen erhalten. Es wird herausgefunden, worum es bei diesen Anfragen geht und worum sie bitten. Außerdem wird ermittelt, welche Antwort an den Benutzer gesendet werden soll.

Um all dies zu tun, werden wir Flask verwenden.

Was ist eine Flasche?

Flask (Ein Python Microframework)

Dies vereinfacht den Entwurf einer Webanwendung. Mit Flask können wir uns darauf konzentrieren, was die Benutzer anfordern und welche Art von Antwort sie zurückgeben sollen.

Erfahren Sie mehr über Micro Frameworks.

Wie funktioniert eine Flaschen-App?

Mit dem Code können wir eine grundlegende Webanwendung ausführen, die wir wie eine Website bedienen können.

aus der Flasche importieren
app = Flasche (__ name__)
@ app.route ("/")
def home ():
    return "Hallo Welt!"
if __name__ == "__main__":
    app.run (debug = True)

Dieser Code ist in unserem main.py gespeichert.

Zeile 1: Hier importieren wir das Flask-Modul und erstellen einen Flask-Webserver aus dem Flask-Modul.

Zeile 3: __name__ bedeutet diese aktuelle Datei. In diesem Fall ist es main.py. Diese aktuelle Datei repräsentiert meine Webanwendung.

Wir erstellen eine Instanz der Flask-Klasse und rufen sie als App auf. Hier erstellen wir eine neue Webanwendung.

Zeile 5: Dies ist die Standardseite. Zum Beispiel, wenn ich nach dem Schrägstrich auf eine Website wie "google.com/" gehe. Dann ist dies die Standardseite von Google.

Dies ist, was die @ app.route (

Zeile 6–7: Wenn der Benutzer meine Website besucht und zur Standardseite wechselt (nichts nach dem Schrägstrich), wird die unten stehende Funktion aktiviert.

Zeile 9: Wenn Sie Ihr Python-Skript ausführen, weist Python dem Skript bei der Ausführung den Namen "__main__" zu.

Wenn wir ein anderes Skript importieren, verhindert die if-Anweisung, dass andere Skripts ausgeführt werden. Wenn wir main.py ausführen, ändert es seinen Namen in __main__ und nur dann wird die if-Anweisung aktiviert.

Zeile 10: Dadurch wird die Anwendung ausgeführt. Mit debug = True können mögliche Python-Fehler auf der Webseite angezeigt werden. Dies hilft uns, die Fehler aufzuspüren.

Versuchen wir, main.py auszuführen

Wechseln Sie in Ihrem Terminal oder der Eingabeaufforderung zu dem Ordner, der Ihre Datei main.py enthält. Dann py main.py oder python main.py. In Ihrem Terminal oder Ihrer Eingabeaufforderung sollte diese Ausgabe angezeigt werden.

Der wichtige Teil lautet Running on http://127.0.0.1:5000/.

127.0.0.1 bedeutet diesen lokalen Computer. Wenn Sie die Bedeutung nicht kennen (wie ich es nicht zu Beginn getan habe - dieser Artikel ist sehr hilfreich), verweisen 127.0.0.1 und localhost auf diesen lokalen Computer.

Gehen Sie zu dieser Adresse und Sie sollten folgendes sehen:

Glückwunsch! Sie haben eine Website mit Flask erstellt!

Mehr Spaß mit der Flasche

Zuvor haben Sie gesehen, was passiert ist, als wir main.py mit einer Route ausgeführt haben, die app.route ("/") war.

Fügen wir weitere Routen hinzu, damit Sie den Unterschied erkennen können.

aus der Flasche importieren
app = Flasche (__ name__)
@ app.route ("/")
def home ():
    return "Hallo Welt!"
@ app.route ("/ salvador")
def salvador ():
    return "Hallo Salvador"
if __name__ == "__main__":
    app.run (debug = True)

In den Zeilen 9–11. Wir haben eine neue Route hinzugefügt, diesmal zu / salvador.

Führen Sie nun die Datei main.py erneut aus und rufen Sie http: // localhost: 5000 / salvador auf.

Bisher haben wir Text zurückgegeben. Machen wir unsere Website schöner, indem wir HTML und CSS hinzufügen.

HTML, CSS und virtuelle Umgebungen

HTML und Vorlagen in Flask

Erstellen Sie zuerst eine neue HTML-Datei. Ich habe meine home.html angerufen.

Hier ist ein Code, mit dem Sie loslegen können.



  
    
     Kolben-Tutorial </ title>
  </ head>
  <body>
    <h1> Mein erster Versuch mit der Flasche </ h1>
    <p> Flasche macht Spaß </ p>
  </ body>
</ html></pre><h4>Wichtiger Punkt zum sich zu erinnern</h4><p>Das Flask Framework sucht nach HTML-Dateien in einem Ordner namens templates. Sie müssen einen Vorlagenordner erstellen und alle Ihre HTML-Dateien dort ablegen.</p><img alt="Denken Sie daran, die Datei main.py immer außerhalb Ihres Vorlagenordners zu speichern" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187434905.png" /><p>Jetzt müssen wir unsere main.py ändern, damit wir die von uns erstellte HTML-Datei anzeigen können.</p><pre>aus Flasche importieren Flasche, render_template</pre><pre>app = Flasche (__ name__)</pre><pre>@ app.route ("/")
def home ():
    return render_template ("home.html")</pre><pre>@ app.route ("/ salvador")
def salvador ():
    return "Hallo Salvador"</pre><pre>if __name__ == "__main__":
    app.run (debug = True)
  Wir haben zwei neue Änderungen vorgenommen</pre><p>Zeile 1: Wir haben die render_template () -Methode aus dem flask-Framework importiert. render_template () sucht nach einer Vorlage (HTML-Datei) im Vorlagenordner. Dann wird die Vorlage gerendert, nach der Sie fragen. Weitere Informationen zur render_templates () -Funktion</p><p>Zeile 7: Wir ändern die Rückgabe so, dass sie jetzt render_template ("home.html") zurückgibt. Dadurch können wir unsere HTML-Datei anzeigen.</p><p>Besuchen Sie jetzt Ihren localhost und sehen Sie die Änderungen: http: // localhost: 5000 /.</p><img alt="" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187435770.png" /><h3>Fügen wir weitere Seiten hinzu</h3><p>Erstellen wir eine about.html im Vorlagenordner.</p><pre><! DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title> Über Flask </ title>
  </ head>
  <body>
    <h1> Über die Flasche </ h1>
    <p> Flask ist ein in Python geschriebenes Micro-Web-Framework. </ p>
    <p> Zu den Anwendungen, die das Flask-Framework verwenden, gehören Pinterest,
      LinkedIn und die Community-Webseite für Flask selbst. </ P>
  </ body>
</ html></pre><p>Nehmen wir eine ähnliche Änderung vor wie zuvor bei main.py.</p><pre>aus Flasche importieren Flasche, render_template</pre><pre>app = Flasche (__ name__)</pre><pre>@ app.route ("/")
def home ():
    return render_template ("home.html")</pre><pre>@ app.route ("/ about)
def about ():
    return render_template ("about.html")</pre><pre>if __name__ == "__main__":
    app.run (debug = True)</pre><p>Wir haben drei neue Änderungen vorgenommen:</p><p>Zeile 9: Ändern Sie die Route auf "/ about".</p><p>Zeile 10: Ändere die Funktion so, dass es jetzt def about () ist:</p><p>Zeile 11: Ändern Sie die Rückgabe so, dass sie jetzt render_template ("about.html") zurückgibt.</p><p>Sehen Sie sich nun die Änderungen an: http: // localhost: 5000 / about.</p><img alt="" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187436698.png" /><h4>Verbinden wir beide Seiten mit einer Navigation</h4><p>Um beide Seiten zu verbinden, können wir oben ein Navigationsmenü haben. Wir können Flask verwenden, um die Erstellung eines Navigationsmenüs zu vereinfachen.</p><p>Erstellen wir zunächst eine template.html. Diese template.html dient als übergeordnete Vorlage. Unsere zwei untergeordneten Vorlagen erben Code von ihm.</p><pre><! DOCTYPE html>
<html lang = "en" dir = "ltr">
 <head>
   <meta charset = "utf-8">
   <title> Kolben-Elternvorlage </ title>
   <link rel = "stylesheet" href = "{{url_for ('static', filename = 'css / template.css')}}">
 </ head>
 <body>
    <header>
      <div class = "container">
        <h1 class = "logo"> Erste Webanwendung </ h1>
        <strong> <nav>
          <ul class = "menu">
            <li> <a href="{{ url_for('home') }}"> Startseite </a> </ li>
            <li> <a href="{{ url_for('about') }}"> Über </a> </ li>
          </ ul>
        </ nav> </ strong>
      </ div>
    </ header></pre><pre>    {% block content%}
    {% endblock%}</pre><pre> </ body>
</ html></pre><p>Zeile 13–14: Wir verwenden die Funktion url_for (). Es akzeptiert den Namen der Funktion als Argument. Im Moment haben wir ihm den Namen der Funktion gegeben. Weitere Informationen zur Funktion url_for ().</p><p>Die beiden Zeilen mit den geschweiften Klammern werden durch den Inhalt von home.html und about.html ersetzt. Dies hängt von der URL ab, in der der Benutzer surft.</p><p>Diese Änderungen ermöglichen es den untergeordneten Seiten (home.html und about.html), eine Verbindung zum übergeordneten Element (template.html) herzustellen. Dadurch müssen wir den Code für das Navigationsmenü in der Datei about.html und home.html nicht kopieren.</p><p>Inhalt von about.html:</p><pre><! DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title> Über Flask </ title>
  </ head>
  <body>
    {% erweitert "template.html"%}
    {% block content%}</pre><pre>    <h1> Über die Flasche </ h1>
    <p> Flask ist ein in Python geschriebenes Micro-Web-Framework. </ p>
    <p> Zu den Anwendungen, die das Flask-Framework verwenden, gehören Pinterest,
      LinkedIn und die Community-Webseite für Flask selbst. </ P></pre><pre>    {% endblock%}
  </ body>
</ html></pre><p>Inhalt von home.html:</p><pre><! DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title> Kolben-Tutorial </ title>
  </ head>
  <body>
    {% erweitert "template.html"%}
    {% block content%}</pre><pre>    <h1> Mein erster Versuch mit der Flasche </ h1>
    <p> Flasche macht Spaß </ p>
    
    {% endblock%}
  </ body>
</ html></pre><p>Versuchen wir, CSS hinzuzufügen.</p><h3>Hinzufügen von CSS zu unserer Website</h3><h4>Ein wichtiger Hinweis zum Erinnern</h4><p>So wie wir einen Ordner namens templates erstellt haben, um alle unsere HTML-Vorlagen zu speichern, benötigen wir einen Ordner namens static.</p><p>In statischer Form speichern wir unser CSS, JavaScript, Bilder und andere notwendige Dateien. Aus diesem Grund ist es wichtig, dass Sie einen CSS-Ordner zum Speichern Ihrer Stylesheets erstellen. Nachdem Sie dies getan haben, sollte Ihr Projektordner folgendermaßen aussehen:</p><img alt="" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187437939.png" /><h4>Verlinkung unseres CSS mit unserer HTML-Datei</h4><p>Unsere template.html ist diejenige, die alle Seiten verbindet. Wir können den Code hier einfügen und er gilt für alle untergeordneten Seiten.</p><pre><! DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title> Kolben-Elternvorlage </ title></pre><pre>    <link rel = "stylesheet" href = "{{url_for ('static', filename = 'css / template.css')}}"></pre><pre></ head>
  <body>
    <header>
      <div class = "container">
        <h1 class = "logo"> Erste Webanwendung </ h1>
        <strong> <nav>
          <ul class = "menu">
            <li> <a href="{{ url_for('home') }}"> Startseite </a> </ li>
            <li> <a href="{{ url_for('about') }}"> Über </a> </ li>
          </ ul>
        </ nav> </ strong>
      </ div>
    </ header></pre><pre>{% block content%}
{% endblock%}</pre><pre> </ body>
</ html></pre><p>Zeile 7: Hier geben wir den Pfad an, in dem sich die template.css befindet.</p><p>Sehen Sie sich nun die Änderungen an: http: // localhost: 5000 / about.</p><img alt="" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187438891.png" /><h3>Mit Flask und virtualenv vorankommen</h3><p>Nachdem Sie mit der Verwendung von Flask vertraut sind, können Sie diese in zukünftigen Projekten verwenden. Eine Sache, die Sie immer tun sollten, ist die Verwendung von virtualenv.</p><h4>Warum virtualenv verwenden?</h4><p>Sie können Python neben der Webentwicklung auch für andere Projekte verwenden.</p><p>In Ihren Projekten sind möglicherweise verschiedene Versionen von Python installiert, verschiedene Abhängigkeiten und Pakete.</p><p>Wir verwenden virtualenv, um eine isolierte Umgebung für Ihr Python-Projekt zu erstellen. Dies bedeutet, dass jedes Projekt seine eigenen Abhängigkeiten haben kann, unabhängig davon, welche Abhängigkeiten jedes andere Projekt hat.</p><h4>Erste Schritte mit virtualenv</h4><p>Führen Sie zuerst diesen Befehl an Ihrer Eingabeaufforderung oder Ihrem Terminal aus:</p><pre>pip install virtualenv</pre><p>Zweitens machen Sie Folgendes:</p><pre>virtualenv "Name der virtuellen Umgebung"</pre><p>Hier können Sie der Umgebung einen Namen geben. Normalerweise gebe ich ihm einen virtuellen Namen. Es wird so aussehen: virtualenv virtual.</p><p>Überprüfen Sie nach dem Einrichten der virtuellen Umgebung Ihren Projektordner. Es sollte so aussehen. Die virtuelle Umgebung muss in demselben Verzeichnis erstellt werden, in dem sich Ihre App-Dateien befinden.</p><img alt="Wie das Verzeichnis aussieht" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187440038.png" /><h4>Aktivierung der virtuellen Umgebung</h4><p>Gehen Sie nun zu Ihrem Terminal oder zur Eingabeaufforderung. Wechseln Sie in das Verzeichnis mit der Datei activate. Die Datei mit dem Namen activate befindet sich in einem Ordner mit dem Namen Scripts für Windows und bin für OS X und Linux.</p><p>Für OS X- und Linux-Umgebung:</p><pre>$ name der virtuellen Umgebung / bin / activate</pre><p>Für Windows-Umgebung:</p><pre>Name der virtuellen Umgebung \ Scripts \ activate</pre><p>Da ich einen Windows-Computer verwende, sieht die Aktivierung der Umgebung folgendermaßen aus:</p><img alt="Sie sollten dies am Anfang Ihrer Eingabeaufforderung sehen" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187440735.png" /><p>Der nächste Schritt ist die Installation von flask in Ihrer virtuellen Umgebung, damit wir die Anwendung in unserer Umgebung ausführen können. Führen Sie den Befehl aus:</p><pre>Pip installieren Kolben</pre><p>Führen Sie Ihre Anwendung aus und rufen Sie http: // localhost: 5000 / auf.</p><p>Endlich haben wir unsere Webanwendung erstellt. Jetzt wollen wir der ganzen Welt unser Projekt zeigen.</p><p>(Weitere Informationen zu virtualenv finden Sie in den folgenden Handbüchern zur offiziellen Dokumentation von virtualenv und Flask.)</p><h3>Senden wir es an die Cloud</h3><p>Um anderen das von uns erstellte Projekt zu zeigen, müssen wir lernen, wie man Cloud Services verwendet.</p><h4>Stellen Sie Ihre Webanwendung in der Cloud bereit</h4><p>Um unsere Webanwendung in der Cloud bereitzustellen, verwenden wir Google App Engine (Standard Environment). Dies ist ein Beispiel für eine Platform as a Service (PaaS).</p><p>PaaS bezieht sich auf die Bereitstellung von Betriebssystemen und zugehörigen Diensten über das Internet ohne Downloads oder Installation. Mit diesem Ansatz können Kunden Anwendungen erstellen und bereitstellen, ohne in die zugrunde liegende Infrastruktur investieren zu müssen (Weitere Informationen zu PaaS finden Sie unter TechTarget).</p><blockquote>Google App Engine ist eine Plattform als Serviceangebot, mit der Entwickler und Unternehmen Anwendungen mithilfe der fortschrittlichen Infrastruktur von Google - TechOpedia - erstellen und ausführen können.</blockquote><h4>Bevor du anfängst:</h4><p>Sie benötigen ein Google-Konto. Wechseln Sie nach dem Erstellen eines Kontos zur Google Cloud Platform Console und erstellen Sie ein neues Projekt. Außerdem müssen Sie das Google Cloud SDK installieren.</p><p>Am Ende dieses Tutorials wird Ihre Projektstruktur so aussehen.</p><img alt="Projektordnerstruktur" src="https://imgstore.nyc3.cdn.digitaloceanspaces.com/chinthaka/1569187441545.png" /><p>Wir müssen drei neue Dateien erstellen: app.yaml, appengine_config.py und requirements.txt.</p><p>Inhalt von app.yaml:</p><pre>Laufzeit: python27
api_version: 1
threadsafe: wahr</pre><pre>Handler:
- URL: / statisch
  static_dir: static
- URL: /.*
  Skript: main.app
  
Bibliotheken:
  - name: ssl
    Version: Neueste</pre><p>Wenn Sie das Google-Lernprogramm in dem Teil lesen, in dem über den Inhalt der app.yaml gesprochen wird, enthält es nicht den Abschnitt, in dem ich über Bibliotheken geschrieben habe.</p><p>Als ich zum ersten Mal versuchte, meine einfache Webanwendung bereitzustellen, funktionierte meine Bereitstellung nie. Nach vielen Versuchen wurde mir klar, dass wir die SSL-Bibliothek einbinden müssen.</p><p>Die SSL-Bibliothek ermöglicht es uns, sichere Verbindungen zwischen Client und Server herzustellen. Jedes Mal, wenn der Nutzer unsere Website besucht, muss er sich mit einem Server verbinden, der von Google App Engine betrieben wird. Dafür müssen wir eine sichere Verbindung herstellen. (Ich habe das kürzlich gelernt. Wenn Sie Vorschläge dazu haben, lassen Sie es mich wissen!)</p><p>Inhalt von appengine_config.py:</p><pre>von google.appengine.ext importieren Anbieter</pre><pre># Fügen Sie alle im Ordner "lib" installierten Bibliotheken hinzu.
vendor.add ('lib')</pre><p>Inhalt der Requirements.txt:</p><pre>Flasche
Werkzeug</pre><p>Jetzt installieren wir in unserer virtuellen Umgebung (stellen Sie sicher, dass Ihr virtuelles Env aktiviert ist) die neuen Abhängigkeiten, die wir in der Datei requirements.txt haben. Führen Sie diesen Befehl aus:</p><pre>pip install -t lib -r Anforderungen.txt</pre><p>-t lib: Dieses Flag kopiert die Bibliotheken in einen lib-Ordner, der während der Bereitstellung auf App Engine hochgeladen wird.</p><p>-r Requirements.txt: Weist Pip an, alles aus Requirements.txt zu installieren.</p><h4>Anwendung bereitstellen</h4><p>Verwenden Sie diesen Befehl, um die Anwendung in Google App Engine bereitzustellen.</p><pre>gcloud app bereitstellen</pre><p>Ich schließe normalerweise ein - Projekt [ID des Projekts]</p><p>Dies gibt an, welches Projekt Sie bereitstellen. Der Befehl sieht folgendermaßen aus:</p><pre>gcloud app deploy --project [ID des Projekts]</pre><h4>Die Anwendung</h4><p>Überprüfen Sie nun die URL Ihrer Anwendung. Die Anwendung wird folgendermaßen gespeichert:</p><pre>"Ihre Projekt-ID" .appspot.com</pre><p>Meine Bewerbung ist hier: http://sal-flask-tutorial.appspot.com</p><h3>Fazit</h3><p>In diesem Tutorial haben Sie alle gelernt, wie Sie:</p><ul><li>Verwenden Sie das Framework Flask, um Python als serverseitige Sprache zu verwenden.</li><li>Erfahren Sie, wie Sie mit HTML, CSS und Flask eine Website erstellen.</li><li>Es wurde gelernt, wie virtuelle Umgebungen mit virtualenv erstellt werden.</li><li>Verwenden Sie die Google App Engine-Standardumgebung, um eine Anwendung in der Cloud bereitzustellen.</li></ul><h4>Was ich gelernt habe</h4><p>Ich habe drei wichtige Dinge aus diesem kleinen Projekt gelernt.</p><p>Zunächst habe ich den Unterschied zwischen einer statischen Website und einer Webanwendung erkannt</p><p>Statische Websites:</p><ul><li>Bedeutet, dass der Server dem Client HTML-, CSS- und JavaScript-Dateien bereitstellt. Der Inhalt der Site ändert sich nicht, wenn der Benutzer mit ihr interagiert.</li></ul><p>Web Applikationen:</p><ul><li>Eine Webanwendung oder dynamische Website generiert Inhalte auf der Grundlage der abgerufenen Daten (meistens handelt es sich um eine Datenbank), die sich aufgrund der Interaktion eines Benutzers mit der Website ändern. In einer Webanwendung ist der Server für das Abfragen, Abrufen und Aktualisieren von Daten verantwortlich. Dies führt dazu, dass Webanwendungen langsamer und schwieriger bereitzustellen sind als statische Websites für einfache Anwendungen (Reddit).</li></ul><p>Serverseite und Clientseite:</p><ul><li>Ich habe gelernt, dass eine Webanwendung zwei Seiten hat. Die Client-Seite und die Server-Seite. Auf der Clientseite interagiert der Benutzer und auf der Serverseite werden alle vom Benutzer eingegebenen Informationen verarbeitet.</li></ul><p>Zweitens habe ich etwas über Cloud Services gelernt</p><p>Die meisten meiner vorherigen Projekte waren statische Websites, und um sie bereitzustellen, verwendete ich GitHub Pages. GitHub Pages ist ein kostenloser Hosting-Service für statische Websites, der zum Hosten von Projekten aus einem GitHub-Repository entwickelt wurde.</p><p>Bei der Arbeit mit Webanwendungen konnte ich GitHub Pages nicht zum Hosten verwenden. GitHub Pages ist nur für statische Websites gedacht, nicht für etwas Dynamisches wie eine Webanwendung, die einen Server und eine Datenbank benötigt. Ich musste Cloud-Dienste wie Amazon Web Services oder Heroku verwenden</p><p>Drittens habe ich gelernt, wie man Python als serverseitige Sprache verwendet</p><p>Um die Serverseite der Webanwendung zu erstellen, mussten wir eine serverseitige Sprache verwenden. Ich habe gelernt, dass ich das Framework Flask verwenden kann, um Python als serverseitige Sprache zu verwenden.</p><h4>Nächste Schritte:</h4><p>Mit Flask können Sie alles Mögliche bauen. Mir wurde klar, dass Flask dazu beiträgt, den Code hinter der Website leichter lesbar zu machen. Ich habe im Sommer 2018 die folgenden Anträge gestellt und hoffe, mehr zu machen.</p><p>Persönliche projekte</p><ul><li>Eine Twilio SMS App</li><li>Meine persönliche Website</li></ul><p>Während meines Praktikums</p><ul><li>Teil eines Projekts, in dem ich etwas über Docker und Container gelernt habe</li></ul><p>Hier ist die Liste der Ressourcen, die mir beim Erstellen dieses Tutorials geholfen haben:</p><ul><li>App Engine - Skalierbare Web- und Mobile-Backends in jeder Sprache erstellen | App Engine | Google Cloud. ”Google, Google, cloud.google.com/appengine/.</li><li>"Erstellen einer Website mit Python Flask". PythonHow, pythonhow.com/building-a-website-with-python-flask/.</li><li>„Flask - Vorlesung 2 - Webprogrammierung mit Python und JavaScript in CS50.“ YouTube, 6. Februar 2018, youtu.be/j5wysXqaIV8.</li><li>"Erste Schritte mit Flask on App Engine Standard Environment | App Engine-Standardumgebung für Python | Google Cloud. ”Google, Google, cloud.google.com/appengine/docs/standard/python/getting-started/python-standard-env.</li><li>"Installation". Willkommen | Flask (A Python Microframework), flask.pocoo.org/docs/0.12/installation/.</li><li>„Python - Kostenlose Bereitstellung von Sites für statische Kolben auf Github-Seiten.“ Reddit, www.reddit.com/r/Python/comments/1iewqt/deploying_static_flask_sites_for_free_on_github/.</li><li>Echtes Python. „Virtuelle Python-Umgebungen: Ein Primer - Real Python.“ Real Python, Real Python, 7. August 2018, realpython.com/python-virtual-environments-a-primer/.</li><li>„Was sind Cloud-Dienste? - Definition von WhatIs.com. ”SearchITChannel, searchitchannel.techtarget.com/definition/cloud-services.</li><li>„Was ist Google App Engine (GAE)? - Definition von Techopedia. ”Techopedia.com, www.techopedia.com/definition/31267/google-app-engine-gae.</li></ul><p>Wenn Sie Anregungen oder Fragen haben, können Sie gerne einen Kommentar hinterlassen.</p></div><ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3845662922897763" data-ad-slot="9806544668" data-ad-format="link" data-full-width-responsive="true"></ins><div class="neighbor-articles"><h4 class="ui header">Siehe auch</h4><a href="/item/notice-how-to-register-for-kyc-751ad4/" title="[Hinweis] So registrieren Sie sich für KYC">[Hinweis] So registrieren Sie sich für KYC</a><a href="/item/how-to-use-trivial-co-to-explore-the-ethereum-network-982a3d/" title="Wie man Trivial.co benutzt, um das Ethereum-Netzwerk zu erkunden">Wie man Trivial.co benutzt, um das Ethereum-Netzwerk zu erkunden</a><a href="/item/how-to-create-your-own-cocoapod-simple-easy-steps-1c3548/" title="So erstellen Sie Ihren eigenen Cocoapod (einfache Schritte)">So erstellen Sie Ihren eigenen Cocoapod (einfache Schritte)</a><a href="/item/how-to-build-an-ios-app-with-snap-kit-b5671d/" title="So erstellen Sie eine iOS-App mit Snap Kit">So erstellen Sie eine iOS-App mit Snap Kit</a><a href="/item/self-awareness-how-to-stay-focused-and-fully-engaged-in-any-conversation-77c482/" title="Selbstbewusstsein: So bleiben Sie fokussiert und lassen sich auf jedes Gespräch ein">Selbstbewusstsein: So bleiben Sie fokussiert und lassen sich auf jedes Gespräch ein</a></div></main><div class="push"></div></div><footer><div class="flags-footer"><a href="https://vi.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="vn flag"></i></a><a href="https://uk.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="ua flag"></i></a><a href="https://tr.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="tr flag"></i></a><a href="https://th.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="th flag"></i></a><a href="https://sv.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="ch flag"></i></a><a href="https://sr.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="rs flag"></i></a><a href="https://sl.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="si flag"></i></a><a href="https://sk.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="sk flag"></i></a><a href="https://ru.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="ru flag"></i></a><a href="https://ro.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="ro flag"></i></a><a href="https://pt.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="pt flag"></i></a><a href="https://pl.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="pl flag"></i></a><a href="https://ar.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="sa flag"></i></a><a href="https://bg.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="bg flag"></i></a><a href="https://cs.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="cz flag"></i></a><a href="https://da.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="dk flag"></i></a><a href="https://el.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="gr flag"></i></a><a href="https://es.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="es flag"></i></a><a href="https://et.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="ee flag"></i></a><a href="https://fi.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="fi flag"></i></a><a href="https://fr.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="fr flag"></i></a><a href="https://hi.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="in flag"></i></a><a href="https://hr.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="hr flag"></i></a><a href="https://hu.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="hu flag"></i></a><a href="https://id.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="id flag"></i></a><a href="https://it.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="it flag"></i></a><a href="https://ja.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="jp flag"></i></a><a href="https://ko.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="kr flag"></i></a><a href="https://lt.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="lt flag"></i></a><a href="https://lv.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="lv flag"></i></a><a href="https://ms.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="my flag"></i></a><a href="https://nl.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="nl flag"></i></a><a href="https://no.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="no flag"></i></a><a href="https://uz.chinthaka.org/item/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-9639e1/"><i class="uz flag"></i></a></div>chinthaka.org<!-- --> © <!-- -->2020<!-- --> </footer></div></div></div></body></html>