Lerne die Rest-API in Flutter zu handhaben - Android & IOS | Rahul Agarwal | Skillshare
Suchen

Playback-Geschwindigkeit


1.0x


  • 0.5x
  • 0.75x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Lerne die Rest-API in Flutter zu handhaben - Android & IOS

teacher avatar Rahul Agarwal, Flutter Developer & Trainer

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

    • 1.

      KURSEINFÜHRUNG

      0:51

    • 2.

      Was ist Http-Anfrage

      9:12

    • 3.

      GET-Anfrage auf einen Server implementieren

      29:05

    • 4.

      Json-Daten aus der API abfassen

      15:25

    • 5.

      Grundlegende shopping

      24:51

    • 6.

      Bearbeitung der POST-Anfrage

      17:30

    • 7.

      PUT- und DELETE

      13:21

    • 8.

      Authentifizierte Anfragen stellen

      10:51

    • 9.

      Warum wir Modelle brauchen

      7:16

    • 10.

      Erstelle unserer ersten Modellklasse

      10:51

    • 11.

      Änderungen im Frontend erforderlich

      6:31

    • 12.

      Werkzeug zum einfachen Erzeugen von Modellen

      10:30

    • 13.

      Verzehren einer neuen Ruhe api

      12:44

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

94

Teilnehmer:innen

--

Projekte

Über diesen Kurs

Netzwerkanfragen und die Integration von APIs ist eines der Probleme, mit denen Flutter konfrontiert sind. Wir werden erfahren, wie wir in einer Flutter auf die REST-API zugreifen können. Heute verwenden die meisten Apps Remotedaten mit APIs. Daher ist dieser Kurs der wichtige für diejenigen Entwickler, die ihren Träger in Flutter machen möchten.

wir erstellen eine normale shopping in der eine Liste von Produkten angezeigt wird, die über das Internet in unserer application abgerufen werden. Dazu werden wir Fakestore API integrieren. Es ist eine kostenlose online die wir verwenden können, wenn wir Dummy-Daten für unsere E-Commerce-App benötigen, ohne unseren eigenen Backend-Server zu haben.

Darüber hinaus Beim Umgang mit APIs erhalten wir möglicherweise eine große Anzahl von Daten, die mehrere Felder haben und damit besser ist, jedes JSON in Dart umzuwandeln. Dieses Konzept heißt JSON das wir später auch diskutieren werden.

Triff deine:n Kursleiter:in

Teacher Profile Image

Rahul Agarwal

Flutter Developer & Trainer

Kursleiter:in

Hello, I'm Rahul. I am skilled in building cross platform application using Flutter. I am freelance developer as well as conduct workshops to share my knowledge with the community.

Vollständiges Profil ansehen

Level: Intermediate

Kursbewertung

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen auf Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. KURSEINFÜHRUNG: Bearbeitung von Netzwerkanfragen und die Integration von APIs ist eines der Probleme, mit denen Flatter-Anfänger konfrontiert sind. In diesem Kurs werden wir eine normale Einkaufsanwendung erstellen, die eine Liste von Produkten anzeigt , die über das Internet abgerufen werden, in unserer flacheren Anwendung wird feste oder APA integriert. Zu diesem Zweck handelt es sich eine kostenlose Online-Rest-APIs , die wir jederzeit verwenden können , um dies für unsere E-Commerce-App zu berücksichtigen , ohne über einen eigenen Backend-Server zu verfügen. Darüber hinaus erhalten wir beim Umgang mit APIs möglicherweise eine große Anzahl von Daten, die zahlreiche Felder haben können. Und so ist es besser, jeden einzelnen Jason in Dart-Objekte umzuwandeln . Dieses Konzept wird als json-Parsing bezeichnet, auf das wir später auch eingehen werden. Also ohne weitere Zeit zu verschwenden, fangen wir an. 2. Was ist Http-Anfrage: Hallo, willkommen zurück zum neuen Video. In diesem Modul werden wir darüber sprechen, wie Rest-API-Aufrufe in Florida implementiert werden können. Wenn Sie Apps entwickeln möchten , die Daten aus dem Internet abrufen, müssen Sie wissen, wie Sie Netzwerkanfragen stellen und wie die Antworten richtig behandeln. wird es auf jeden Fall Wenn Sie also eine reale Anwendung erstellen, viele Szenarien geben, in denen Sie Daten vom Server abrufen müssen oder die Hilfe einiger APIs in Ihrem Anwendung. Ob es verwendet wurde API oder Google API oder was auch immer. In diesen Szenarien müssen Sie wissen, wie Sie mit APIs effektiv umgehen können. Jetzt stellt sich die Frage, was ist eine Netzwerkanfrage? Einfach ausgedrückt, wenn Sie eine App wie WhatsApp, Instagram oder Twitter auf Ihrem Smartphone öffnen . App, versucht, die neuesten Daten von einem Remote-Standort abzurufen , rufen Sie normalerweise diesen Server auf. Server ist ein zentraler Ort , an dem die meisten Benutzerdaten gespeichert werden. Die App, die Sie verwenden, wird als Client bezeichnet. Es gibt also zwei Begriffe, die als Server und Client bezeichnet werden. Client ist die Anwendung, und das ist unabhängig von der App oder Android- oder iOS-App, die Sie verwenden. Und Server ist die Datenbank, die an einem entfernten Ort gespeichert ist. Das ist also ein sehr grundlegendes Konzept. Was ist eine RESTful API? Der Rest steht für Repräsentative Staatstransfer. Es ist eine Anwendungsprogrammschnittstelle, die API ist, das ist diese HTTP-Anfrage zum Abrufen oder Senden von Daten zwischen Computern. Denken Sie also daran, dass die Kommunikation zwischen einem Client und einem Server hauptsächlich über RESTful APIs erfolgt. Das war's. Die grundlegendste Form der realistischen Methode ist eine URL, die der Client verwendet, um eine Anfrage an den Server zu stellen. Wenn Sie also APIs oder ein Essen sehen, erhalten Sie eine URL, die Sie die Anfrage senden mussten. Das heißt, Sie müssen diese bestimmte URL drücken. Und nach Erhalt einer erfolgreichen Anfrage überprüft der Server den Endpunkt der URL, führt einige Verarbeitungen durch und sendet die angeforderten Daten zurück an den Client. Das ist also eine sehr einfache Art zu erklären, definitiv in dieser technischen Kernsache, es mag auch ein wenig komplex sein, aber Sie müssen sich nur daran erinnern, dass wir eine Anfrage an den Server senden werden der Server wird uns einige Daten geben. Das war's. Jetzt gibt es verschiedene Methoden , die Sie in einer Rest-API verwenden. Es gibt also viele von ihnen, aber die am häufigsten verwendeten sind 4. Das erste ist GET-Anfrage. Es bedeutet einfach, dass Sie einige Daten aus einer entfernten Datenbankanforderung mithilfe von „Nur Abrufen von Daten abrufen“ abrufen möchten , was bedeutet, dass sie unter diesen bestimmten Daten keine anderen Auswirkungen haben . Das heißt, Sie werden einfach die Daten lesen. Mit der GET-Anfrage können Sie nichts ändern. Keine Anfrage posten. Post-Anfragen sendet Daten an diese spezifische Ressource. Sie verwenden die Methode, um Daten wie Kundeninformationen oder Dateiuploads an den Server zu senden . Denken Sie also indirekt daran , wenn Sie etwas vom Client zum Server senden etwas vom Client zum und auf dem Server speichern müssen. In diesem Szenario verwenden Sie die Post-Anfrage. Der dritte ist verspätet. Es tut also, was es sagt, dass es die spezifische Ressource vom Server löscht . Und der vierte wird gesetzt, das heißt ersetzt, oder Sie können sagen, aktualisiert alle aktuellen Repräsentationen der Zielressourcen. Das bedeutet, dass Sie bereits einige Daten an den Server gesendet haben , aber später diese spezielle Feldprüfung aktualisieren möchten, insbesondere von Daten wie Alter oder Telefonnummer. In diesem Fall verwenden Sie also die PUT-Anfrage. Es handelt sich also definitiv um eine Patch-Anfrage und noch ein paar mehr. Wenn Sie mehr über alle Anfragen erfahren möchten , können Sie sie einfach googeln. Aber die meiste Zeit , wenn Sie eine Anwendung erstellen, arbeiten Sie damit auf Anfrage. Jetzt im Flattern, auf jeden Fall, wenn Sie etwas tun wollen, müssen wir diese Abhängigkeit bekommen. Also für die HTTP-Anfrage gibt es auch eine Abhängigkeit, die als HTTP-Paket bezeichnet wird. Hängen Sie einfach Ihren Browser an, gehen Sie zu dev und geben Sie einfach http ein. Und dann denk daran, diesen auszuwählen. Das ist von dem Dart-Team selbst. Ja, scrollen Sie nach unten und kopieren Sie diese Abhängigkeit. Und in Ihre Anwendung können Sie es einfügen. Denken Sie daran, wenn Sie ein neues Projekt erstellen möchten, können Sie es auch jetzt tun Ich verwende unser vorheriges Projekt, aber ich werde diese vorherigen Codes entfernen. Wenn du willst, kannst du das Video einfach pausieren und Florida schreiben, ein neues Projekt erstellen und von vorne beginnen. Es liegt an dir. Unser Letter Pub Get läuft. Es wird die Abhängigkeit bekommen und ja, es ist geschafft. Jetzt ist unsere HTTP-Abhängigkeit installiert. Das nächste, was ich tun werde, ist die vorherigen Dateien zu entfernen. Und jetzt werde ich im Ordner mid lib neue Ordner erstellen, wie der erste grün ist und der zweite der Dienste-Ordner. Und innerhalb des Bildschirms werde ich Home Dot Dot- und Insights-Services erstellen . Ich erinnere mich, dass ich APIs service dot dot erstellen werde. Also einfach, was ich getan habe, ist, dass ich unsere Codes sauber organisiert habe. Es ist so, als ob sich alle Screens im Screens-Ordner befinden würden. Alle API-Dienste, bei denen es sich älteren serverseitigen Code handelt oder was auch immer mit der API interagiert, befinden handelt oder was auch immer mit der API interagiert sich im API-Servicepunkt. Auf diese Weise haben Sie eine Trennung von Code und Sie erhalten dieses MVC-Modell, das auch Model View Controller-Muster ist. Es ist eine gute Praxis. Das tust du nicht, du willst nicht alle deine Codes zufällig und in nur einer Datei schreiben . Langfristig wird es für Sie sehr schwierig sein, sie zu organisieren oder zu debuggen. Das war's. Wir haben verstanden, was STDP ist, welche Methoden sich unterscheiden und wie das HTTP-Paket in unserem Projekt installiert wird. In der nächsten Sitzung werden wir einige echte APIs verwenden und diese APIs mithilfe dieser GET-Anfrage aufrufen. Danke. Wir sehen uns im nächsten Video. 3. Implementierung von GET-Anforderung auf einen Server: Hi. In dieser Sitzung werden wir eine echte Rest-API mit dem Namen fixed oder APA verwenden. Im Internet erhalten Sie viele APIs, aber wir werden eine Dummy-API verwenden, damit sie kostenlos verwendet werden kann. Und wir können machen, was wir wollen. Mit dieser API. Wir können ein paar gefälschte E-Commerce-Daten bekommen. Das heißt einfach, wenn Sie Produkte, Kategorien, Benutzer oder was auch immer erhalten möchten Produkte, Kategorien, , können Sie diese von diesem APM erhalten. Bringen Sie Ihren Texteditor mit, während Sie Ihren Browser aufrufen, und geben Sie einfach fixed oder APA ein. Und der erste, der auftaucht, musst du darauf klicken. Die URL lautet gefälschte Shop-API.com. Also ja, das ist es. Sie müssen kein Konto oder irgendetwas erstellen , um es zu verwenden. Dies sind die Ressourcen, die es uns Produkte zur Verfügung stellt. Es gibt uns die Armee gefangen, es gibt uns Benutzer und Login-Token. Und diese anderen Wege. Das heißt, ich habe über Nike gesprochen. Es gibt URLs und Pods. Man kann Endpunkte sagen. Sie müssen eine Anfrage senden. Das sind also die Endpunkte. Also einfach, wenn ich darauf klicke, siehst du oben, dass du gefälschte Shop-API.com Slash-Produkte sehen kannst . Dies ist die URL, und wenn Sie auf diese URL klicken, erhalten Sie diese Antwort. Es ist also in diesem JSON-Format. Es hat einen ID-Titel, dann Beschreibung, Bild, Preis. Das sind also die Daten, die es uns geben wird, und wir werden diese Daten in unserer Benutzeroberfläche verwenden . Denken Sie also daran, dass Sie nach Abschluss dieser gefälschten Shop-API die Nachrichten-API Blog-API haben können. Es gibt viele andere APIs. Wenn du willst, kannst du es selbst ausprobieren. Aber fangen wir mit der APA dieser Woche an. Das erste, was wir tun müssen, ist eine Funktion zu erstellen, die diese GET-Anfrage bearbeitet. bedeutet einfach, dass diese Funktion mit der API interagiert. Von nun an werden wir die API-Dienste schreiben, das sind alle Dienste, die sich auf APIs beziehen. In dieser separaten Datei. Wir wollen nicht alles in die Benutzeroberfläche schreiben. Lassen Sie uns zunächst einfach das HTTP-Paket importieren. Das ist die Art und Weise, wie man es macht. Dann erstelle ich einfach die Klasse des API-Dienstes. Diese Klasse können wir überall in unserer Anwendung verwenden, indem ein Objekt erstellen und diese Funktionen dann direkt aufrufen. Jetzt ist die erste Funktion, die wir erstellen, GET oder post. Es wird also eine Synchronisation sein. Jetzt müssen wir zuerst die URL schreiben. Die URL lautet diese. Sie können die URL einfach von oben abrufen. Sie kopieren es einfach und fügen es hier ein. Um nun eine GET-Anfrage mit diesem HTTP-Paket zu senden, können Sie die Zeichenfolge nicht direkt senden. Sie müssen es in URI-Balken konvertieren. Und drin. Sie müssen Yard und Point erwähnen. Das ist die Methode oder so wird es gemacht. Du erinnerst dich einfach daran. Definitiv. wirst du dich gewöhnen. Jetzt. Jetzt haben wir die URL, auf die wir klicken müssen, um die Anfrage zu senden. Jetzt ist es soweit. Wir erhalten das Ergebnis, das das HTTP-Paket verwendet. Es ist der Punkt. Und dann können Sie sehen, dass es viele Anfragen gibt, die einen Post-Patch erhalten. Aber wir wollen diese GET-Anfrage. Und darin schreiben Sie einfach die Produkt-URL. Okay? Du musst es zurückgeben. Jetzt. Sie können den Statuscode des Ergebnisses ausdrucken. Wenn es 200 sind, haben wir diese Antwort erfolgreich erhalten. Wenn es 404 ist, dann existiert diese Seite nicht. Und wenn du willst, kannst du auch einfach benennen. Es. Reagiert wie möglich mit Namen, nur Sie können verstehen, dass diese Variable die Antwort der GET-Anfrage hat. Und schließlich müssen Sie diesen Antworttext in diesem JSON-Format zurückgeben . Also wirst du einfach, richtig Jason, du musst diese Datenkonvertierung importieren und wir schreiben einfach json dot, decode und response.body hier. Damit ist unsere Funktion oder Methode abgeschlossen. So senden wir eine Anfrage zum Abrufen. Sie können also einfach sehen, als Erstes eine URL zu schreiben. zweite bestand darin, die Antwort mit dieser http.get-Antwort zu erhalten. Und nach diesem STDP-Abruf können wir den Antworttext an die Benutzeroberfläche zurückgeben , die diese Funktion aufruft. Okay? Der nächste Teil ist also die Anzeige dieser Daten auf unserer Homepage. Einfach in home dot, dot create. Einfache UI-Startseite. Dann ist return falsch. Dan, App. In der App-Leiste. Ich bin gestorben. Dann mache ich zentriert. Title ist gleich true, elevation ist gleich 0. Und ich gebe Hintergrundfarbe als Hintergrundfarbe Punkt roten Akzent. Im Körper. Wir werden Future Builder verwenden , da diese Funktion eine Zukunft ist. Und in Zukunft werde ich einfach API-Antwortpunkt schreiben , alle Beiträge bekommen. Sehen Sie hier, wir haben dieses Objekt dieser Klasse erstellt und rufen einfach diese Future-Funktion auf. Dies ist also das erste Mal, dass Sie eine echte Zukunftsfunktion verwenden. In den früheren Videos haben wir diese Funktion nur ausgeflippt. Aber jetzt ist es eine echte Serverfunktion , deren Ausführung einige Zeit in Anspruch nehmen wird. Im Builder haben wir einen Text und einen Schnappschuss. Wie üblich werden wir ganz am Anfang prüfen, ob ein Snapshot Daten oder eine kreisförmige Fortschrittsanzeige für das Zentrum enthält. Und wenn es vorerst Daten enthält, senden wir nur einen Erfolgstext. Weil ich zuerst die Ausgabe sehen möchte, diese Ausgabe zuerst in der Debug-Konsole. Also lass uns neu starten. Bringen Sie unsere Bewerbung herunter. Sehen Sie, wir haben diesen Erfolg hier, aber in der Debug-Konsole können Sie sehen, dass der Code response.status 200 ist und der Antworttext so ist. Das heißt, es ist eine Liste von Karten. Also in den ersten Daten. Dies sind die ersten Daten. Sie haben also einen ID-Titel, eine Beschreibung. Dies ist im JSON-Format. Um diese Daten hier in der Benutzeroberfläche auszugeben, verwenden wir einfach ein Punkt-Builder-Widget für die Listenansicht. Punkt-Builder-Widget der Listenansicht, dasselbe wie das ListView-Widget. Hier. Diese Daten können unbegrenzt sein. Das heißt, wir kennen die Anzahl der Elemente in dieser Liste nicht . Also schreiben wir einfach die Länge dieser Liste hier. Punktegenerator für Listenansichten hat zwei Parameter. Erstens ist die Anzahl der Artikel und zweitens der Item-Builder. Item Builder ist eine Funktion , die Kontexte hat und dieser Index, Index ist die Position dieses Elements in der Liste , die bei 0 beginnt. Der Index beginnt also bei 0123 bis zur Anzahl der Elemente in dieser Liste minus eins. Denn wenn die Liste fünf Elemente enthält, liegt der Index zwischen 0 und vier. Elementanzahl ist also einfach Snapshot-Punktdaten, Punktlänge, weil Snapshot diese Daten sind. Und wir werden seine Länge verwenden. Denken Sie also daran, wenn wir in Zukunft etwas zurückgeben , wird es diese Zukunft tun. Diese Daten werden in dieser Snapshot-Variablen gespeichert. Okay, jetzt haben wir einen Punktegenerator für Listenansichten. Und im Item Builder müssen wir zurückgeben, was in dieser Benutzeroberfläche starr sein sollte? Das heißt, was sollten wir zum UI-Bildschirm zurückkehren? Und ich werde die Listenkachel zurückgeben. Jetzt schreibe ich einfach in diesem Titel Snapshot-Punktdaten. Dann index das ist, weil es eine Liste ist, wir müssen diesen Index verwenden , der bei 0 beginnt. Das stellt sich vor, dass 0 Verschmutzung diese ist. Okay? Also hier sind wir gerade hier in diesen Daten als diese. Das wird also von hier aus einer sein. Das wird einer sein, ich schätze immer noch hier. Ja. Ja, immer noch hier, es ist der zweite, der der eine Index ist. Also hier werde ich einfach den Titel hier ausgeben. Das ist Checkout. Wenn ich das mache, haben wir einen Fehler oder erhalten wir die Daten? Wir hatten diesen Fehler, okay, okay, tut mir leid. Wir müssen es nur ausschneiden und hier einfügen. Und wenn es keine Daten gibt, geben wir einfach die Fortschrittsanzeige zurück. Es war ein sehr dummer Fehler. Aber diese Dinge passieren. Okay. Jetzt schauen wir nochmal nach. Sieh zu, dass es geladen wird und dann haben wir diese Daten. Und da es sich um eine Listenansicht handelt, kann ich scrollbar sein. Wir haben diesen Rucksack, dünnes Hemd, eine Baumwolljacke und vieles mehr. Wir haben also alle Daten. Und ich hoffe du hast verstanden, wie ich das Jason Ding benutzt habe. Einfach Snapshot-Punktdaten sind diese Liste , dieser ausführliche Listenindex. Ich bin in die Dämmerung 0 gegangen, was das ist. Und von der Position 0 aus habe ich diesen Titelschlüssel ausgegeben, habe ich diesen Titelschlüssel ausgegeben weil ich weiß, dass er sich in der Map im JSON-Format befindet, also muss ich nur diesen Schlüsselwert verwenden. Jetzt mit dem Titel an der Spitze werde ich die Eigenschaft image verwenden. Bild-Punkt-Netzwerk. Dann schreibe einfach hier Snapshot-Punktdatenindex als Bild. Und ich schreibe einfach die Höhe als 5030. Lassen Sie uns jetzt sparen und sehen. Prüfen Sie erneut, ob es ordnungsgemäß funktioniert. Ja. Wir haben die Bilder vom Server. Es ist also das erste Mal, dass Ihre Daten echt sind, dass sie vom Server kommen und Ihre Anwendung ziemlich gut aussieht. Als Nächstes würde ich diesen Untertitel verwenden. Und in diesem Text werde ich den Snapshot-Punktdatenindex verwenden, und dann werde ich diese Preissache verwenden. Und da es sich um eine Ganzzahl handelt, werde ich sie in eine Zeichenfolge konvertieren, C 1091. Aber ich möchte auch ein Dollarzeichen hinzufügen. Und um Dollar zu schreiben. Und man kann dieses Symbol nicht einfach schreiben, weil Florida dafür eine andere Bedeutung hat. Sie müssen also einen Backslash-Dollar wie diesen verwenden. Und ich werde einfach erhöhen Preis ist gleich Backslash Dollar dann plus. Und wenn Sie die Ausgabe überprüfen, sieht sie sehr gut aus. Es sieht ziemlich gut aus. Ich hoffe du hast verstanden. Bis jetzt. Wir haben diese Anfrage zum Abrufen verwendet. Das ist das erste, bei dem wir alle Produkte bekommen. Diese zweite HTTP-Methode oder die Route sind Produkte, dann ein bestimmtes Produkt, was einfach bedeutet, wie Sie diese einzelnen Produktdetails erhalten können. Das ist also auch sehr wichtig. Wenn Sie darauf klicken, können Sie die Ausgabe sehen. Dies ist nur das Detail eines Produkts, das nur ein Produkt ist. Wenn Sie also eine E-Commerce-Anwendung verwendet haben als Sie auf dieses Produkt klicken, eine weitere Seite angezeigt, auf der Sie detaillierte Produktdetails, Produktbilder, Produktkategorie und dann auch in den Warenkorb legen. Um dies erneut verwenden zu können, müssen Sie eine neue Funktion erstellen. Was wird also einfach ein einzelnes Produktdetail sein. Um das einzelne Produktdetail zu erfahren, wie es gemacht wird. Versuchen wir es zu tun. Zuerst. Nach diesem Gitarrenbeitrag kopiere ich das einfach, füge es ein und nenne es, bekomme ein einzelnes Produkt. Und der Variablenname wird ein einzelnes Produkt sein, URL. Und auch diese URL-API ist ID hier. Und auf jeden Fall ist es einzigartig , weil wir nicht wissen , auf welchen Benutzer der Benutzer klicken wird. Also müssen wir ihm die ID senden während wir diese Funktion als Argument aufrufen. Also einfach, das ist der Maktab. Um dieses Detail eines bestimmten Produkts zu erhalten. Alles wird gleich sein. Nur die URL ist jetzt anders und wir senden auch die ID. jetzt im Bildschirmordner Erstellen Sie jetzt im Bildschirmordner einen anderen Dateinamen, den Produktdetailbildschirm. Wenn der Benutzer also auf dieses bestimmte Produkt klickt, sollte er zu diesem Produktdetailbildschirm weitergeleitet werden indem er die ID des Produkts trägt. Also einfach Material eingeben. Dann haben Sie ein statusbehaftetes Widget namens Produktdetail. Und jetzt denk daran, dass es akzeptiert und identifiziert. und wir werden es an den Konstruktor senden. Schreiben Sie jetzt in dieser Rechnungsfunktion einfach ein Gerüst. Dann wieder dasselbe, AB-Bar. Dann färbt innerhalb einer Hintergrundfarbe der rote Akzent ein. Und in ihrem Körper. Wir müssen diesen zukünftigen Builder erneut verwenden , um unsere Funktion der API-Umfragen aufzurufen. Dot erhält ein einzelnes Produkt und diese ID, und diese ID kommt durch den Konstruktor. Im Kontext. Momentaufnahme. Überprüfen Sie dann den Schnappschuss , der Daten enthält Wenn nicht, geben Sie eine kreisförmige Fortschrittsanzeige zurück. Das war's. Nochmals, ich werde einfach den nächsten Erfolg hierher zurückbringen, nur um Ihnen zu zeigen, wie es gemacht wird. Funktioniert es oder nicht? Auf dem Startbildschirm? In der Listenansicht müssen Sie diese Eigenschaft beim Tippen verwenden. Sie werden das senden und den Benutzer zum Bildschirm „Produktdetail“ weiterleiten. Adl füge diesen Code ein. Sie müssen sich nur daran erinnern, wie man Code und all seine sehr grundlegenden Produktdetails pusht . Und in der ID muss man einfach dieser Index sein und dann einfach ID schreiben. Wenn ich es jetzt speichere und auf das erste Element, C, klicke, wird es angezeigt. Und dann können Sie in der Debug-Konsole die Ausgabe sehen. Das ist wieder ID-Titel, dasselbe. Man muss also einfach präsentieren. Verwenden Sie dieses Detail, um diese in der Benutzeroberfläche anzuzeigen, wie wir es auf der Homepage getan haben. also auf dem Produktbildschirm Entfernen Sie also auf dem Produktbildschirm einfach diesen Text und senden Sie einen Behälter zurück. Und der Container gibt ganz am Anfang nur Spielraum. Dann wird das Kind eine Spalte sein , weil es viele Daten gibt. Jetzt ganz am Anfang werde ich dieses Bildpunktnetzwerk haben, als es scheint Punktdaten. Und der Index wird jetzt nicht da sein , weil es statisch eine Map ist, keine Liste. Richtig? Bild als Höhe von 200 und Gewicht von Doppelpunkt-Unendlichkeit, das ist das gesamte Gewicht des Bildschirms. Und dann verwendet zentriertes VJ und ein Kind zeigte den Preis. Also wieder, ich werde Dollars dasselbe verwenden als Snapshot-Punktdaten und versuche, auch etwas zu stylen und etwas Styling zu geben. Jetzt hat der Stil eine Schriftgröße von 25 und eine Schriftgröße. Schriftgewicht, fett. Sparen wir es uns. Hütte. Sehen. Es sieht so gut aus. Nun, was ich tun werde, ist, dass ich oben mit diesem großen Feld einen gewissen Abstand gebe und Typ D Das Bild wird also tödlich sein und zwischen dem Bild und den Preisen werde ich auch geben eine Höhe von zehn, damit wir hier diesen Abstand haben. Und in der Spalte werde ich Main Exists Alignment verwenden, das beginnt. Sie werden in den nächsten Widgets, die wir verwenden werden, wissen, warum ich es getan habe. Aber vorerst haben wir eine sehr schön aussehende Benutzeroberfläche, der alle Produkte auf dem ersten Bildschirm zu sehen sind. Und wenn ich auf dieses Produkt klicke, heißt das Baumwolljacke. Sehen Sie mit dem Bild, dass das Produktbild ist und dass der Preis angezeigt wird. Also das war's. Ich hoffe, Ihnen hat Erstellen dieses Videos Spaß gemacht. Hier. Wir haben diese HTTP-GET-Anfrage verwendet. Denken Sie also daran, dass dies der einzige Code ist, der benötigt wird. Erstens ist diese URL an zweiter Stelle http.get. Und schließlich müssen Sie die Antwort zurückgeben und sie in ein benachbartes Format dekodieren. Das war's. Im nächsten Video werden wir diese ganze Seite mit allen Details wie Beschreibung, Kategorie und Schaltfläche In den Warenkorb vervollständigen allen Details wie Beschreibung, . Versuchen Sie bis dahin einfach, den Code richtig zu verstehen. Wenn Sie es nicht verstanden haben, sich das Video einfach noch einmal an. Aber bitte überspringe kein Konzept. Danke. 4. Abfrage von Json-Daten aus der API: In der letzten Sitzung konnten wir die Details eines bestimmten Produkts abrufen. Und wir konnten es in der Benutzeroberfläche rendern. Bisher wird nur das Bild im Preis angezeigt. Aber heute, in dieser Sitzung, werden wir weiterhin alle Details wie Beschreibung, Kategorie zeigen. Und wenn ich auch einen „In den Einkaufswagen“ -Button habe. Beginnen wir mit der Produktdetailseite. Wir haben dieses Bild. Dann in der Mitte. Wir haben diesen Preis. Dann lassen Sie uns eine große Box haben, um gewissen Abstand zu haben und eine Höhe von zehn zu haben. Dann haben Sie ein Widget, in dem wir diesen Titel zeigen werden. Verschiedene haben diesen Titel gezeigt und lassen Sie uns ihm etwas Stil geben. Wir wollen nur, dass die Schriftgröße 25 beträgt. Mal sehen. Okay, wir haben es. Jetzt. Der Textbereich. Lass es uns Chip-Widget haben. Wenn Sie nicht billig sind, werden Sie, wenn Sie das sehen, wissen Sie, dass es sich um Tags handelt. Wenn Sie ein Tag gesehen haben, das Elektronik oder die Kategorie Tagging oder Hashtags ist. Diese Art von Starr wird benutzt. Also hier werden wir zeigen , dass wir den Abschluss bekommen. Und lass uns Decks haben. Lass uns den nächsten Tag haben. Schriftart, Größe 15 und kühlere Farben punkten weiß. Und in dieser Form. Lass uns eine Hintergrundfarbe haben. Farben, das Blau, Grau. Schauen wir es uns an. Siehst du, ich habe über dieses Widget gesprochen. Ebenfalls. Wenn Sie möchten, können Sie die Querachsenausrichtung als dunkel festlegen, damit alles hierher kommt. Diese Seite, so. Es liegt an dir, was auch immer du willst. Das, das sind sehr einfache Stylingsachen. Keine große Sache. Haben Sie wieder eine Größenbox. Und dann werden wir endlich diese Beschreibung zeigen. Alle Schlüssel sind da. In der Antwort. Sie können das Bild mit der Beschreibung sehen. Und jetzt werde ich speichern und sehen, dass dies die Beschreibung ist. Wenn Sie möchten, können Sie ein gewisses Styling oder eine Schriftgröße vornehmen. Ich lasse es einfach so. Jetzt. Lass uns hier einen „In den Einkaufswagen“ -Button haben. Ich gebe es als Floating Button, Floating Action Button. wir also einen schwebenden Action-Button. Dann Kind. Bei dem Kind. Lass uns das Icon haben. Einkaufswagen hinzufügen, Einkaufskarte in der Brust umrissen. Wir tun nichts. Siehst du, wir haben das hier. Ich gebe ihm einfach die Hintergrundfarbe, grün gefärbt. Und ich werde auch die Position der schwebenden Aktionstaste ändern . Ich gebe ihm die Position des schwebenden Action-Buttons, den mittleren Schwimmer. Siehst du, es sieht anständig aus. Unsere Produktdetailseite ist ebenfalls fertig. Wenn Sie zu einem anderen Produkt gehen, finden Sie alle Details hier. Der Titel der Kategorie, der Preis, alles sieht perfekt aus. Wenn wir jetzt zur Fake-Store-API gehen, können wir sehen, dass wir diesen Endpunkt erreicht haben , nämlich ältere Produkte zu bekommen, ein bestimmtes Produkt zu erhalten. Jetzt ist es an der Zeit, dass wir die Kategorien bekommen. Mal sehen, ob wir darauf klicken, es gibt 12344 Kategorien. Wir werden diese Kategorien also in unserer Benutzeroberfläche anzeigen. Zunächst werden wir eine Funktion erstellen, die interagiert. Ich werde einfach kopieren und richtig, mach das Grobkörnig. Es akzeptiert nichts. Dies wird eine URL erhalten. Hier. Dies ist der Endpunkt. Jetzt geht diese Funktion auf den Server und ruft die Kategorie Gegenwart Indus EPI ab. Auf keinen Fall. Dafür müssen wir wieder einen neuen Bildschirm erstellen. Ich nenne alles Kategorie dot, dot. Ich hoffe, Sie verstehen das, all das ist jetzt sehr einfach, GET request zu implementieren. Im Grunde ist alles gleich. Wir sind gerade dabei, unsere Benutzeroberfläche fertigzustellen, damit sie sehr gut aussieht. In der alten Kategorie war Punkt Punkt einfach wichtiges Material. Erstellen Sie dann ein zustandsloses Widget namens Get a Goodie. Habe jetzt eine Gerüstleiste. Gestorben an. Weiter. Holen Sie sich die Leckereien haben eine Hintergrundfarbe von roten Farben und senden Sie sie im Körper durch. Wir werden diese Zukunft haben. Wird das nochmal? Da wird es mit unserer Funktion interagieren. Verwenden Sie nun das Objekt unserer Klasse, um die Funktion get all category aufzurufen. Im Baumeister. Wir werden Kontext und einen Senken-Snapshot haben. Wir müssen einfach überprüfen, ob der Snapshot-Punkt Daten enthält. Wenn nicht, geben wir eine Reihe von kühleren Fortschrittsanzeigen zurück. Wenn ein Schnappschuss, der den Teufel hat, wird dies für die Zeit zurückgegeben, einen Erfolg zurückgeben. Was Sie jetzt tun können, ist, dass wir zum Bildschirm navigieren müssen. Und dafür werde ich auf der Homepage einige Buttons erstellen. Das wird es sein, ich kann, aber es wird ein Symbol haben. Ich kann die Liste anzeigen starten. Jetzt navigieren wir zum Kategorien-Bildschirm. Mein TDL-Seitenlayout. Wir werden einen Kontext haben. Und das. Mal sehen, wie es geht, was die Ausgabe in der Debug-Konsole ist. Das kannst du. Sehen Sie hier, dies ist die Icon-Schaltfläche, die wir haben . Dies sind alle Kategorien, die, wenn ich darauf klicke diesen Erfolg haben und sehen, dies die Ausgabeantwort des Servers ist. Also werde ich jetzt einfach auf der alten Kategorieseite einen Listenansicht-Builder zurückgeben. Da ist es eine Liste. Artikelanzahl, Schnappschusspunktdaten, Punktlänge. Und im Item Builder werde ich einfach Kontexte und Index haben. Jetzt haben wir diesen Index und jetzt werden wir ein Karten-Widget zurückgeben. Dies ist ein weiteres Widget. Ich denke, es ist ein wirklich einfaches Widget das eine Erleichterung hat, nur einen gewissen Rand gibt und ihm dann eine Form von abgerundeter rechteckiger Grenze, Grenzradius, Kreisradius 15 gibt. Und dann hast du in diesem Kind einen Container. Dies ist nur eine grundlegende Sache , bei der ich diese Elektronik ausstellen werde. Joy bleibt Sammlung alles. Jetzt hier in diesem Text werde ich Snapshot-Punktdaten zeigen und dann direkt indizieren. Und ich werde es in Großbuchstaben schreiben. Nur um den guten Tag anzusehen. Ich gebe eine Schriftgröße von 25 an. Jetzt schauen wir mal. Schauen wir uns die Ausgabe an. Jetzt wenn ich darauf klicke. Siehe Elektronik, Schmuck, Männerkleidung, Frau. Es sieht also sehr gut aus. Es sieht anständig aus. Man kann zumindest diesen Rand und die Füllung sagen , wo ich früher den Abstand innerhalb einer außerhalb dieser Karten angegeben habe. Und wenn wir auf diese Karte klicken, sollten wir auf jeden Fall zu einem Bildschirm gehen , auf dem alle Produkte dieser Kategorie angezeigt werden. Dafür in der Karte wickeln wir es einfach mit einem Tintenfass-Tintenfass-Widget und haben keine Tippfunktion, die wir später verwenden werden um Produkte nach Kategorien abzurufen. Das war's also für dieses Video. Im nächsten Video werden wir die Produkte nach Kategorien abrufen. Ngo. 5. Grundlegende shopping: Hi, willkommen zurück. In dieser Sitzung werden wir diese GET-Anfrage abschließen. Und bis jetzt konnten wir die Kategorien abrufen und in unserer Anwendung anzeigen. Aber jetzt ist es an der Zeit, Produkte zu holen , die auf diesen Kategorien basieren. Das heißt, wenn ich auf Elektronik klicke, sollte ein neuer Bildschirm mit allen elektronischen Produkten erscheinen . Und für diesen Endpunkt ist dieser, das ist die Produktkategorie. Und dann müssen wir diesen Kategorienamen senden. Beginnen wir also wie immer zunächst mit der API. Dafür kopiere ich das einfach und füge es hier ein. Ich nenne es, hol mir das Produkt. Indem Sie bekommen. Jetzt akzeptiert es eine String-Katze mit dem Namen dieses Kategorienamens. Und der Variablenname. Ich werde das ändern , um das Produkt zu holen. Nimm den Grobkörnigen, der du bist. Du kannst benennen, was du willst. Und hier ist der Endpunkt wie diese Kategorie und dann der Katzenname. Sehen Sie also, so wird es gemacht und wenn wir darauf klicken, erhalten wir eine Antwort. Mit Alda Produkten. Jetzt haben wir die Funktion bereit, aber wir sollten auch einen neuen Bildschirm erstellen , den wir diese Funktion nennen werden. Ich nenne Alterskategorie, Produkt Punkt Punkt. Und ich werde jetzt meine TDL importieren. Als ein weniger starrer Zustand eines Bildschirms. Es akzeptiert einen Kategorienamen im Konstruktor. Das müssen wir dieser Variablen zuweisen. Jetzt lasst uns ein Gerüst bilden. Dann AB-Balken. In diesem Titel. Ich gebe diesen Kategorienamen in Großbuchstaben. Dies sollten die Titel - und Hintergrundfarben sein. Kettler fängt an zu lesen. Und dann ging das Center Tag durch. Was wir nun wollen ist, wenn wir darauf klicken, sollte sich dieser Pitch öffnen. Gehen wir also zur Kategorie Öl. Und im Tintenfass müssen wir Navigator verwenden, Dot Bush. Dann mein TDL-Seitenlayout, View Reveal und dann der Name Produkte Grain. Und dann müssen wir diesen bestimmten Namen schicken. Wir werden den Namen aus den Snapshot-Daten erhalten und dann indizieren. Lass es uns ausprobieren. Mal sehen was passiert. Jetzt gehe ich zu Kategorien und klicke auf Schmuck. Sehen Sie, dass diese Freude in der AB-Bar da ist. Wenn ich auf Elektronik klicke, ist Elektronik da. Jetzt werden wir einfach einen zukünftigen Builder innerhalb der Kategorie-Produktseite verwenden . Und ich bin gleich hinter dem Namen her richtig. Okay, also im Körper, lass uns einen zukünftigen Baumeister haben. Nan. Dann wird die Zukunft App Service sein, Produkt nach Kategorie abrufen und dann senden, um die grobkörnige Namensvariable zu erhalten. Und im Builder werden wir einen Kontext haben. Wie immer denke ich, du wirst es einfach lernen. Jetzt. Das Gleiche machen wir immer wieder. Vielleicht nie Kontexte. Und dann ein einziger Schnappschuss. Wir werden nachsehen. Wenn ein Schnappschuss Daten enthält und zurückgibt kreisförmige Fortschrittsanzeige zurückgibt. Wir haben das mehr getan als, ich habe sogar vergessen, wie oft wir diese Dinge getan haben. Wenn es jetzt die Daten enthält, verwenden wir einen Listenansicht-Generator. Nun wünscht sich diese Benutzeroberfläche dasselbe wie die Home-Benutzeroberfläche. Dieser ListView-Generator. Diese Kategorie. Wir schalten einfach diesen ListView-Builder um. Und zuerst werde ich hier nur prüfen, ob alles in Ordnung ist. Snapshot-Punktdaten, Punkt, Entf, Indexpreis als dieser Produktbildschirm werde ich importieren. Okay, schauen wir es uns an. Wenn es einen Fehler gibt. Wenn ich auf Elektronik klicke, ist nichts passiert. Mal sehen, hat er irgendeinen Fehler oder Irrtum? Produkt nach Kategorie? Gut, Produkt nach Kategorie. Dann haben wir diese Funktion. Lassen Sie uns ab und zu neu starten ob noch ein Fehler besteht. Wissen Sie, ich schätze, ich habe die Datei einfach nicht gespeichert. Das ist in Ordnung. Aber sieh es dir jetzt an, wenn ich gehe und Schmuck nur die Juweliersachen wirklich da sind und wenn ich darauf klicke, wird diese Produktdetailseite auftauchen. Es funktioniert also sehr gut. Und ich schätze, dieser Teil ist fertig. Wenn wir über eine E-Commerce-Anwendung nachdenken, können Sie sagen, dass es definitiv einen Einkaufswagen gibt , den wir hier nicht verwendet haben. Schauen wir uns das Dokument mit den Ressourcen an. Und hier sehen Sie, dass wir auch einen Einkaufswagen bekommen können , der uns einige Produkte liefert, wenn wir eine Benutzer-ID senden. Nehmen Sie sich also bitte die Zeit , diese Dokumente zu lesen. Du wirst viel lernen. Es gibt viele Endpunkte. Gleiche. Ich benutze ein paar davon, um dir zu zeigen, wie es geht. Jetzt werden wir die Warenkorbseite implementieren. Zunächst werden wir eine Funktion implementieren , die diese Karte erhält. Also nenne ich es einfach , hol mir eine Karte. Es akzeptiert eine Benutzer-ID. Und ich nenne es Kartenprodukte holen. Und dann ist der Endpunkt. Diese Karten und dann die Benutzer-ID. Dies ist der Endpunkt der Einkaufswagen-API. Da es sich also um eine Dummy-API handelt, müssen wir bereits vorhandene Benutzerdetails in ihren Autoprodukten verwenden . Wir können unsere eigenen Daten nicht wirklich einfügen. Wir nehmen eine Benutzer-ID von eins, um zu ermitteln , dass sie sich in befindet. Denken Sie einfach daran, was auch immer wir tun , sind nur gefälschte Daten. Ich möchte nur, dass du das Konzept von HTTP verstehst und wie man die Daten in der Benutzeroberfläche abruft und anzeigt. Das war's, nichts weiter als das. Erstellen wir nun eine Schutzbildschirmseite. Gottes grüner Punkt. Importieren Sie dann Material. Lassen Sie uns einen weniger starren Kartenbildschirm haben. Dann werden wir, wie Sie werden, sein Gerüst haben. Dann in diesem Titel. Richtig? Bist du. Gott, es wird professionell aussehen. Dann haben einige Ted's genauso wie zuvor wir haben das so oft gemacht, ich schätze, jetzt hattest du einen Experten in diesen Dingen. Jetzt, im Körper, werden wir ein paar den Vorsitz eines Baumeisters haben, der akzeptiert, wenn die Zukunft eine Karte bekommt. Und ich werde eine Benutzer-ID senden, der ich bereits weiß, dass sie in der festen oder API vorhanden ist. Verwenden Sie einfach die Dokumentation dieser API. Wenn Sie den Snapshot mit Rechenzentrum nicht verstanden haben , ist dies erneut verstanden Snapshot Rechenzentrum nicht verstanden haben , ist eine kreisförmige Fortschrittsanzeige. Hier. Vorerst lese ich einen Erfolgstext damit wir dieses Ergebnis in der Debug-Konsole erhalten können. Jetzt müssen wir natürlich auch zum Bildschirm navigieren. Also die Startseite, gehe zur App-Leiste und ich kopiere diese Icon-Schaltfläche und füge sie ein. Und jetzt wird das Einkaufswagen sein. Und diese Seite wird Guards Screen sein. Schauen wir es uns an. Siehst du, wir haben diese Karte. Ich kann hören. Wenn ich jetzt auf das Warenkorbsymbol klicke, lautet diese Antwort wie folgt. Es gibt uns eine Antwort von 200. Das heißt, es war ein Erfolg. Wir haben die ID Benutzer-ID eins. Dann. Unser Hauptanliegen ist der einfachste Produktschlüssel. Der Schlüssel des Produkts hat also den Wert eines Arrays , der aus der Produkt-ID und der Menge besteht. Hier bekommen wir also nur diese Produkt-ID. Wir müssen uns also an zukünftige Bauherren wenden, um zuerst Kartendetails abzurufen und später dann das Produkt abzurufen. Das heißt, wir wollen auf jeden Fall den Produktnamen und das Produktbild von dieser Produkt-ID. Also lasst uns damit anfangen. Einfach, wir werden schreiben, wenn ein Snapshot Daten enthält, dann haben wir eine Liste von Produkten, das heißt, das ist dieser Schlüssel, das ist der Produktschlüssel. Jetzt werden wir einen Listenansicht-Builder verwenden . Zeigen Sie all diese Produkte an. Und bei der Artikelanzahl werde ich Produkte dot land verwenden. Und im Item Builder werde ich Kontext und Index verwenden. Jetzt beginnt der Spaß, denn wir müssen wieder eine Zukunft nutzen. Denn jetzt müssen wir das Produktdetail aus der Produkt-ID abrufen das Produktdetail aus , was wir bereits zuvor gemacht haben. Also müssen wir einfach APIs und Umfragen schreiben, dot bekommt ein einzelnes Produkt. Und dann werde ich einfach diese Produkte verwenden, dann indizieren und dann diese Produkt-ID. So wie das. Jetzt werde ich wieder Rick-Kontexte haben und dann den Schnappschuss richtig sehen. Dieses Mal werde ich den Bogen-Snapshot nennen . Und dann müssen wir überprüfen, ob ein einzelner Snapshot-Punkt Daten enthält. Dieses Mal werde ich zum ersten Mal eine lineare Fortschrittsanzeige zurückgeben . Und jetzt werde ich einen Listenstil haben , der alle Details enthält. Einfach im Listenstil. Ich werde diesen Titel zuerst haben und dir zeigen, dass er funktioniert. Singen Sie Snapshot-Punktdaten und dann Titel. Prüfen wir, ob es funktioniert oder nicht. Bringen Sie Ihre Bewerbung heraus. Und wenn ich dann einfach auf den Einkaufswagen C, C klicke , haben wir die drei Artikel, die sich im Warenkorb befinden. Diese Logik ist ein bisschen knifflig, aber Sie müssen das Video anhalten und es richtig verstehen. Im ersten zukünftigen Baumeister bekommen wir den Wagen. Im zweiten zukünftigen Builder erhalten wir den Namen des Produktbilds und einen Preis von dieser Produkt-ID. Im Vordergrund werde ich das Bildpunktnetzwerk verwenden und dann einfach Bildpunktdaten versenken. Und dann Bild. Ich gebe ihm einfach eine Körpergröße von 40. Als im Untertitel schreibe ich diesen Preis oder nicht den Preis. Ich meine diese Menge. Wie viel habe ich bestellt. Das bin nicht ich, das, diese Dummy-API-Daten. Und es ist eine Menge, also müssen wir sie in eine Zeichenfolge ändern. Und dann habe ich in diesem Trailing eine Icon-Schaltfläche und das Symbol wird entfernt. Das ist ein verzögertes Produkt. Ich baue das alles, um mehr zu machen, lade viel mehr reale Anwendungen und nicht nur eine Dummy-Anwendung. Hoffen wir, dass alles gut funktioniert. Bringen Sie Ihren Emulator als Code in den Warenkorb. Und sieh mal, es sieht perfekt aus. Wir haben diesen Titel, wir haben das Bild und wir haben auch die Menge. Das sieht jetzt aus wie eine echte Warenkorbseite. Nur wir brauchen ist eine Grundbestellen-Schaltfläche Jetzt hier. Wir können es in der unteren Navigationseigenschaft des Gerüsts angeben . Gerüst, anstatt die schwebende Aktionstaste zu verwenden, werde ich verwenden, aber die Navigationsleiste. Und hier nehme ich einen Container. Und dann gebe ich ihm einfach eine Größe von 60. Gewicht der Doppelpunkt-Unendlichkeit, das ist die gesamte Breite. Farben grün. Und in diesem Kind wird es einen zentralen Textbereich geben, der wird, was wir jetzt in der richtigen Reihenfolge haben. Und dann gib ihm einfach etwas Textstil. Farbe, Farben, Weiß, Schriftgröße. Schriftgröße. Ich gebe ihm 30. Speichere es. Und sehen Sie, dass diese Seite besser aussieht als jede andere Anwendung, die hier ist, grundlegende Anwendung, werde ich sagen, weil wir unsere Kategorien haben, wenn wir darauf klicken, haben wir die Produkte. Sehen Sie, wir haben diese Produkte. Wenn wir auf ein Produkt klicken, ist das Produkt Dale da und dieser Fehler liegt nur daran, dass die Seite nicht scrollbar war. Um diesen Adder zu lösen, können wir einfach zum Produktdetailbildschirm gehen. Und hier im Container wickle ich es einfach mit ihnen ein. Einzeluntergeordnete Scroll-Ansicht. Das war's. Siehst du, der Fehler ist weg. Dies sind die grundlegenden Dinge , die Sie beim Erstellen einer Anwendung beachten müssen , die wir möglicherweise vergessen. Und es wird nur wenige Dollar geben, aber es kann sehr einfach gelöst werden. Damit ist dieser GET-Request-Teil endlich abgeschlossen. Wir haben viel gelernt. In der nächsten Sitzung. Wir werden darüber sprechen, wie mit der Post-Anfrage umgegangen werden soll. Dann übe einfach weiter. 6. Bearbeitung von POST-Anfragen: Hallo, willkommen zu dieser neuen Sitzung. Bisher haben wir gerade über diese GET-Anfrage gesprochen. Aber es ist an der Zeit, dass wir uns auch mit den anderen Anfragen befassen. Denn offensichtlich haben wir jetzt die Daten. Aber viel Zeit werden wir auch Daten verbessern. Das heißt, wir werden auch Daten senden , soweit wir die Post-Anfrage verwenden müssen. Wie gehe ich jetzt mit der Post-Anfrage um? Wir wissen bereits, dass es reduziert ist, Daten an einen Server zu senden. Wir verwenden es in Szenarien wie dem Hochladen einer Datei oder dem Senden von Formulardaten. In einer Post-Anfrage. Zusätzliche Parameter wie Header und Bodies werden ebenfalls zusammen mit der Anfrage gesendet, die unsere Daten enthält. In unserer API haben wir nun diesen Login-Benutzer , also Benutzeranmeldung und Punkt, dem es sich um eine Post-Anfrage handelt. Und wir müssen einen Benutzernamen und ein Passwort senden. Und da es sich um eine Dummy-API handelt, müssen wir nur diesen Benutzernamen und dieses Passwort senden. Dann ist nur es erfolgreich und es wird ein krankes Token gesendet. Das heißt einfach, ja, die Benutzeranmeldeinformationen sind echt, sind gültig. Gehen wir nun zu den APA-Umfragen, und hier erstellen wir eine Post-Anfrage. Es wird einfach eine zukünftige Benutzeranmeldung sein. Und dann akzeptiert es einen Benutzernamen und ein String-Passwort. Das ist also eine sehr professionelle oder diese Schreibweise, die Sie auch in der realen Anwendung verwenden werden . Wenn ich wollte, hätte ich das Benutzernamen-Passwort hier direkt schreiben oder fest codieren können. Aber ich möchte, dass es viel dynamischer wird. Wir werden eine Login-URL haben, URI-Balken. Und das wird definitiv im URL-Endpunkt da sein. Und danach haben wir Kunst und melden uns dann an. Okay? Jetzt ist es Zeit für das Neue, was die Reaktion ist. Die Antwort lautet zum ersten Mal x auf den p dot post und hat unsere Login-URL. Jetzt. Wir müssen einen Benutzernamen und ein Passwort an diese Partei senden. Also sage ich hier einfach Benutzername, Benutzername und dann Passwort, Passwort. So senden wir es also. Das war's. Es war wohl keine große Sache, denn es ist auch eine Bitte, bei der wir einfach nicht viel tun. Wir haben unsere Antwort und die eine URL akzeptiert, jeden Text. Hier würde ich einfach Kleid, Bonds, Punkte, Punkte, Statuscode schreiben , und alles sollte da sein. Okay, tut mir leid, ich habe vergessen, await zu benutzen. Das war ein sehr dummer Fehler. Denken Sie also daran, dass „ Warten“ sehr wichtig ist, wenn wir diese Art von Anfrage stellen . Jetzt verwenden wir den Anmelde-Endpunkt für die Benutzeranmeldung von der APA. Es wird ein Token zurückgegeben, wenn es erfolgreich ausgeführt wurde. Jetzt haben wir die Funktion, es ist Zeit, den Bildschirm zu erstellen , der der Anmeldebildschirm ist. Es ist so gut, dass unsere Bewerbung immer professioneller wird, aussieht und immer vollständiger wird. Jetzt haben wir einen Anmeldebildschirm. Dann scanne Telefon, App-Leiste. Dann lassen wir es Florida Shop nennen. Du kannst benennen, was du willst. Ich verwende nur einen zufälligen Namen. Und dann wird die Hintergrundfarbe eingefärbt, angefangen bei X. Und jetzt im Körper habe ich einen Container. Es wird einige Ränder von Duan De haben, frei von Medienabfragepunkten von Kontexten Punktgröße, Punktbreite und Höhe, als wenn die gesamte Höhe genommen werden sollte. Okay? Jetzt in diesem Kind haben wir eine Spalte in dieser Matrix Insulinmänner als zentriert und Kreuz x ist ein Element und senden es, weil ich möchte, dass diese Felder in der Mitte des Bildschirms sind. Wir werden also zwei Textfelder haben , nämlich Benutzername, Passwort. Aber zuerst darf ich es zur Homepage machen. Es wird die Homepage unserer Bewerbung sein. Wenn ich mich jetzt aktualisiere, können wir sehen, dass dies der Blumentest scharf ist. Und jetzt dann Login-Bildschirm. Wir werden haben, ich bin auch zum Textbearbeitungs-Controller. Wann würden wir Controller mit Textbearbeitung benennen und lernen. Und zweiter Controller, wenn wir Word-Controller verwenden. Wie ich bereits sagte, müssen wir nun den Benutzernamen und das Passwort verwenden , die hier angegeben sind. Also kopiere ich es einfach. Und hier in diesem Text werde ich ihn einfügen. Und wieder kopiere ich dieses Passwort hier. Und hier habe ich auch das Passwort eingefügt, weil es vordefiniert sein sollte. Jetzt bei den Kindern, lass es uns zu Textfeldern haben. Wir wissen bereits, wie man dieses TextField benutzt, wie man es schmückt. Diese sind nicht neu gemacht. Wir haben es in den vorangegangenen Sitzungen getan. Wird eine Eingabedekoration haben, beschriftet, verwenden und benennen. Und dann werde ich auch eine Grenze haben . Danach werde ich eine Größenbox haben. Ich tippe D. Und dann habe ich wieder dieses Textfeld, das ein Passwort sein wird. Jetzt nach dem Textfeld haben wir einfach eine Schaltfläche im Container. Ich gebe ihm eine Größe von 50. Und los von der Punkthöhe der Medienabfrage, das ist die gesamte Breite des Bildschirms. Discord an Ort und Stelle dieses Kindes, ich werde einen erhöhten Knopf haben. Und in diesem Kind schreibe ich einfach login. Und ich werde etwas Styling geben. Man sagt 25, Schriftgewicht mit dem Ball. Okay. Wir haben unseren Login-Bildschirm und er sieht ziemlich gut aus. Wenn Sie möchten, können Sie hier ein Logo-Bild haben . Es liegt an Ihnen. Also einfach in den erhöhten Button werde ich schreiben, das nenne ich hier unsere Login-Funktion. Warten Sie auf die Anmeldung des API-Dienstes. Der Benutzername Ich werde den Namenskontroller-Punkt-Text schreiben, und das Passwort werde ich Passwort-Controller-Punkt-Text schreiben . Sagen wir Nulla. Prüfen wir, ob es richtig funktioniert oder nicht. Wenn ich auf den Login-Button klicke, sehen wir uns die Konsole an, sehen wir, dass es 200 sind und wir unser Token bei uns haben. Da unser Token funktioniert, möchten wir, dass der Benutzer sich erfolgreich anmeldet, er sollte wie jede andere reale Anwendung auf den Startbildschirm geschickt werden . Also dieses Token, wir werden es hier in dieser Variablen speichern. Und dann prüfen wir, ob Token, das get token ist. Und der Token-Wert ist nicht gleich Null. Denn wenn es keine heißt, senden wir einige Daten. Also schreiben wir einfach, wenn es nicht gleich null ist, das heißt, es ist richtig. Sie verwenden eine Snackbar, um dem Benutzer ein Feedback zu zeigen , dass er eingegeben hat. Richtige Anmeldeinformationen. Wir schreiben einfach den Text. Erfolg. Und Yard-Token-ID ist. Und einfach werde ich drucken, Token für den Benutzer so drucken. Und ich werde einige Hintergrundinformationen geben, die dazu geführt haben. Beachten Sie das Grün, das ist ein Snack zu tupfen, aber ich gebe diese Hintergrundfarbe. Danach möchte ich, dass die Snackbar zwei Sekunden lang angezeigt wird, und dann werden wir danach navigieren. Für diese Dauer von zwei Sekunden muss ich diese Zukunft verwenden, die Löschfunktion, damit sie Do Second liest, und dann durch uns navigieren. Dann navigiere uns zum Startbildschirm. Darian-Seitenlayout. Und dann der Startbildschirm. Und die Homepage. So wie das. Wir gehen auf die Homepage. Und wenn dieses Token nicht da ist , liegt ein Fehler vor. Dann zeigen wir wieder die Snackbar. Aber hier schreiben Sie zunächst einen falschen Benutzernamen oder ein falsches Passwort. Nutzername, Passwort richtig. Und die Farbe sollte rot sein. In diesem Fall. Schauen wir uns an, ob es richtig funktioniert oder nicht. Erste Datei, ich werde heute einen falschen Benutzernamen schreiben, ich werde diesen entfernen und dann auf Login klicken. Siehe Benutzername oder Passwort falsch. Auch in unserer Debug-Konsole haben wir eine Meldung wie diese. Aber was ist, wenn ich es richtig mache? Und dann klicken Sie auf Anmelden. Wir haben diese Erfolgsmeldung 2. Zweitens werden wir zum Startbildschirm geschickt. Wow, es sieht **** nett aus. Und wir haben endlich verstanden , wie man diese Post-Anfrage auch verwendet. Da wir also Daten im Anforderungstext gesendet haben, war es eine Post-Anfrage. Sie müssen sich also daran erinnern, wann Sie GET-Anfragen verwenden wann Sie Post-Request verwenden müssen. Aber zumindest funktioniert diese App. Wenn wir uns erfrischen. Natürlich wird es auf dem Startbildschirm angezeigt, aber jetzt haben Sie eine grundlegende Anwendung, um Ihren Freunden zu zeigen, dass Sie etwas von Grund auf neu erstellt haben. Jetzt bist du kein Anfänger, du bist ein Fortgeschrittener in der Florida-Programmierung. Ich hoffe es hat dir bis jetzt gefallen. In der nächsten Sitzung werden wir über die letzten beiden Anfragen sprechen, nämlich eine PUT-Anfrage und eine Löschanforderung. Wir werden also auf jeden Fall auch Spaß daran haben, an diesen Funktionen zu arbeiten. Dann versuche einfach den Code tief zu verstehen. Wenn Sie noch mehr Zweifel haben, bitte. Sie können es auch googeln. Wir fragen uns in der freien Form und so. Aber auf jeden Fall ist es ein sehr wichtiges Konzept. Und während Sie APIs mit NodeJS MongoDB abrechnen, müssen Sie diese HttpRequest häufig verwenden . Danke. 7. PUT DELETE: Hi, willkommen zurück. In den vorherigen Videos haben wir gelernt, wie man GET verwendet und Anfragen veröffentlicht. In diesem Video werden wir etwas über die PUT-Anfrage erfahren. Request wird grundsätzlich verwendet , um die Daten und den Server zu erhalten. In dieser Fake-Store-API werden wir unsere Karte aktualisieren, werden wir unsere Karte aktualisieren wenn wir auf die Schaltfläche In den Einkaufswagen klicken. Das heißt, wenn wir auf diese Schaltfläche klicken, sollte ein gewisser Code ausgeführt werden. Aber denken Sie daran, dass es eine gefälschte API handelt, sodass nichts für Sie aktualisiert wird. Wir können nur die Antwort sehen , die die Konsole zu erfüllen hat. Gehen Sie einfach zur Freak Store-API, dann erfahren Sie Details zu Hunden. Hier finden Sie alle APIs, die es unterstützt. Ich komme und klicke darauf, aktualisiere die Karte. Und jetzt können Sie hier sehen, wie die Methode ist und wir müssen Grüße, Benutzer-ID, Datum und die Produkte senden . Und die Produkte sind , ob es sich um eine Sammlung handelt, das ist eine Liste der Karten, die die Produkt-ID enthalten. Das war's. Also ja, du kannst benutzen oder patchen, was immer du willst. Ich werde dafür verwenden , um es auszuführen. Gehen wir einfach zu unserer Dot-Punkt-Datei für API-Services. Und hier werde ich eine PUT-Anfrage erstellen. Dann erstellen wir eine Datumskarte für das Mittagessen. Es wird eine Sinc-Funktion sein. Und jetzt akzeptiert es eine Benutzer-ID und eine Produkt-ID. Okay? Danach haben wir diese URL. Wie immer. Ich nenne es einfach Update URL. Und die URL besteht aus Schrägstrichen und einer Benutzer-ID. Also so und Benutzer-ID. Okay, ich mache einfach dieses d kleine d. Danach muss ich die Funktionen erstellen, die eine Antwort sind, und dann abwarten. Und jetzt werden wir STDP dot put verwenden. Die URL wird Aktualisierungs-URL sein. Und dann wird der Körper eine Map sein. Und jetzt habe ich, wir müssen die Schlüssel schicken, diese Benutzer-ID. Es wird eine Zeichenfolge sein. Denken Sie daran, dass jeder Schlüssel einen String-Wert haben wird. Damit meine ich, dass ich dir nur das Datum zeigen werde. Wir schreiben einfach date, time, dot, datetime, dot, dot in string. Also müssen wir diese Dinge in Strings umwandeln. Und dann Produkte. Und es wird eine Liste sein, okay? Liste der Karten. Und hier werde ich einfach hier die Produkt-ID, Produkt-ID und die Menge d t. Ich werde nur fest codiert als eins. Und dann mache diese Listenzeichenfolge, um zu funktionieren. Drucken Sie jetzt wie immer einfach den Antwortstatuscode aus. Und dann bindet print yes den Körper. Und danach werde ich JSON decode response.body zurückgeben, aber wir werden nichts tun. Ich mache die Funktion nur so, dass Sie verstehen wie es geht, wenn Sie eine Echtzeit-API haben. Jetzt haben wir die Funktion aktiviert. Gehen wir zum Produktdetail. Hier. In der schwebenden Aktionstaste. Hier mache ich es einfach zu einer Spüle mit einem Gewicht. Ich werde ein Ding sein. Apa-Service, Punkt-Aktualisierungskarte, dann Benutzer-ID. Ich werde wissen, dass ich eine senden werde, da sie fest codiert ist. Und dann ist diese Produkt-ID diese ID. Ich sende auch diese ID. Danach können wir nur noch Angst haben, fallen, fallen, der Bote der Kontexte, Punktshow, Snackbar. Und dann eine Snackbar. Sie können einfach das Produkt schreiben, das in den Warenkorb gelegt wurde. Das sind also nur falsche Rückmeldungen. Aber der Code der HTTP-Anfrage ist echt. Bringen wir es raus. Wenn Sie jetzt zu diesem Jacket-Bildschirm gehen ich auf die Schaltfläche „ In den Einkaufswagen“ klicke, sehe ich mir das Produkt an, das in den Warenkorb gelegt wurde. In der Ausgabe sehen Sie ID, Benutzer-ID, Datum und ein Produkt, das ID ist Produkt-ID ist drei. Wir schicken es drei. Deshalb bedeutet dies letztendlich , dass unsere PUT-Anfrage perfekt funktioniert. Stellen Sie sich vor, es wären echte Daten und wir aktualisieren gerade diese Daten auf dem Server. Daten. Die letzten Anfragen , die wir besprechen werden , sind die Löschanforderung. Daher wird eine Löschanforderung verwendet , um diese Daten auf dem Server zu löschen. Also hier werden wir unsere Karte löschen. Wir tun so, als würden wir unseren Warenkorb löschen, wenn wir im Warenkorbbildschirm auf die Schaltfläche Entfernen klicken, das ist diese Schaltfläche. Diese Schaltfläche. Wenn wir darauf klicken, sollten wir nur das Feedback erhalten. Und wie immer ist es eine gefälschte API. Wir werden nur die Antwort in der Konsole sehen. Erstellen Sie also eine Anfrage wie verzögerte, verzögerte Anfrage als einfach eine Funktion der verzögerten Karte. Dann string user ID. Also holen wir uns einfach die Benutzer-ID und löschen seine Karte. Ich versuche nur, dass du es verstehst. Ich weiß, dass es keinen Sinn macht , nur mit gefälschten APIs zu arbeiten. Aber glaub mir, das wird dir sehr helfen. Jetzt. Wir müssen nur dieselbe URL bekommen. Der einzige Unterschied wird die HTTP-Anfragen sein an die wir nur eine Antwort schreiben, ist gleich, um auf die verzögerte HTTP-Punkt verzögerte Karten-URL zu warten . Das sollten wir also tun. Und danach schreiben wir einfach den Antwort- und Statuscode. gibt die Antwort des Hauptteils und gibt json dot d code response.body zurück. In der API für feste Bestellungen können Sie jetzt sehen, dass es sich um eine verzögerte Warenkorbseite handelt. Und hier ist die URL wie dieser Warenkorb und die Benutzer-ID, und wir müssen ihnen nur mein Drittel der Verspätung senden. Und dann erhalten wir in der Ausgabe die Produkte mit dem Benutzer-ID-Datum. Das war's. Lass es uns ausprobieren. Gehen wir zur Karten-Bildschirmseite. Und dann, in diesem Trailing, haben wir das mit Lob. Und hier schreiben wir einfach einen Gewicht-API-Service Dot, Delete Cut. Und dann senden wir einfach eine Benutzer-ID von einem. Da es sich um eine echte Anwendung gehandelt hätte, erhalten Sie möglicherweise deren Benutzer-ID von Firebase oder wo auch immer Sie möchten. Und danach werden wir nur noch einen Gerüstboten haben und einfach eine Snackbar zeigen. Zeigen Sie einfach eine Snackbar. Der Inhalt als Element wurde erfolgreich gelöscht. Das war's. Lass es uns ausprobieren. Funktioniert es oder nicht? Gehe jetzt zum Kartenbildschirm. Und jetzt werde ich einfach die Konsole räumen. Und jetzt, wenn ich auf diesen Löschen-Button klicke, wird der Artikel erfolgreich gelöscht. Und wir haben diese Artikel-ID, Benutzer-ID, Datum und diese anderen Produkte, siehe 61. Also fügen wir die richtige Karte hinzu. Ich wollte nur eine Löschfunktion implementieren und dir verständlich machen , wie sie funktioniert. Ich weiß hier, dass der gesamte Warenkorb gelöscht wird, aber in diesem Fall sollten wir ein Produkt entfernen. Ich hoffe du hast verstanden. Du musst die Karte aktualisieren. Das heißt, wenn ich das auf den Server entferne, entferne einfach dieses Produkt aus diesem Listenelement. Es liegt an dir. Aber zumindest solltest du das Konzept kennen und wissen , wie man es richtig schreibt. So hoch, ich hoffe dir hat dieses Video gefallen. Wir haben über all diese Anfragen gesprochen, sei es GET, post, PUT, delete. Im nächsten Video werden wir also endlich über die authentifizierte Anfrage diskutieren . Und das wird das letzte Video unseres HTTP-Moduls sein. Und Q.. 8. Erstelle authentifizierte Anfragen: Hi, willkommen zurück. In dieser Sitzung werden wir darüber sprechen, wie authentifizierte Anfragen gestellt werden können. Bisher haben wir also eine API verwendet, auf die wir direkt zugreifen konnten und keinen Authentifizierungsschlüssel benötigt. Dies ist jedoch meistens nicht der Fall , wenn wir Anwendungen erstellen. Um Daten von vielen Webdiensten abrufen zu können, müssen Sie einen Autorisierungs - oder Authentifizierungsschlüssel angeben. Es gibt viele Möglichkeiten, dies zu tun, die wir jetzt diskutieren werden. Der erste Weg ist nun diese grundlegende Kunstmethode. Die grundlegende Authentifizierung bedeutet, dass die Client-App den Benutzernamen und das Passwort in den HTTP-Anfragen an den Server sendet den Benutzernamen und das Passwort in den HTTP-Anfragen an . Wenn wir also einfach ein Benutzernamen-Passwort haben, werden wir eine grundlegende Kunst verwenden. Disc kann auch auf zwei Arten erfolgen. Entweder müssen wir diese Details im body-Parameter senden oder die andere Möglichkeit besteht darin, diese Anmeldeinformationen mit UTF-8 zu codieren und sie dann im Header-Parameter zu übergeben. Lassen Sie uns das Erste tun, das ist, wenn wir diese Details im body-Parameter senden, bringen Sie einfach Ihre API-Services-Datei heraus. Und lassen Sie uns eine Funktion namens Benutzerauthentifizierung erstellen. Und jetzt haben wir hier einen Benutzernamen und ein String-Passwort. Jetzt haben wir derzeit keine URL. Ich zeige dir gerade den Duck-Kurscode , wie es geht. Denn auf jeden Fall haben Sie vielleicht eine API wie einen weiteren AWS-Server oder einen NodeJS-Server oder was auch immer. Ich benutze nur ein Dummy-Ding. Das ist irgendwo api dot, I0, was auch immer. Es ergibt keinen Sinn. Die Sache ist die, das Wichtigste ist hier, es ist die Reaktion. Wenn wir jetzt schreiben, ist die Antwort gleich wait http dot. Wenn wir diese Daten im Körper senden, können wir keine Anfrage zum Abrufen haben. Wir müssen immer die Post-Anfrage verwenden. Dann können nur wir Parteiparameter senden . Jetzt im Hauptteil verwende ich einfach diesen Benutzernamen, Benutzernamen und Passwort, wie dieses Passwort. Und danach können Sie wie immer die Antwort ausdrucken. Ich sage es nur noch einmal, dass wir hier keine API verwenden. Ich möchte Ihnen nur den Code zeigen, wie STDP authentifizieren können, da alles so sein wird wie zuvor. Der einzige Unterschied besteht darin, dass wir diesen Partyparameter verwenden. Stellen Sie sich vor, das ist Ihr NodeJS-Server und wir senden das Benutzernamen-Passwort zur Authentifizierung. Dies ist eine der grundlegenden Kunst. Das zweite ist, die Details über den Autorisierungsheader zu senden , den wir tun können. Einfach so. Okay, ich würde einfach eine andere Funktion erstellen , damit du dich Benutzer oder das dritte IgG erinnerst und ich werde einfach eine Sitzung schreiben. Jetzt werde ich diese Körpersache entfernen. Und da wir keinen body verwenden, können wir auch eine GET-Anfrage stellen, weil wir dieses Detail über Header senden. Jetzt haben wir die erste Kodierung, diese Details wie diese grundlegende Kunst. Dann wird als Erstes dieses grundlegende Schlüsselwort sein. Danach werden wir die Basis 64-Encodierung haben. Und drinnen schreibe ich einfach UDF-Acht-Punkt-Code . Und hier schreibst du deinen Benutzernamen und dein Passwort. Einfach. Nutzername und Passwort. Dieser Code, Sie müssen sich daran erinnern, dass dieses Basic das Präfix ist, das wir verwenden werden. Es gibt ein weiteres Präfix, das wir innerhalb weniger Sekunden verwenden werden . Aber so haben wir den Autorisierungsschlüssel, der codiert. Und dann schreiben Sie in dieser GET-Anfrage einfach Header. Dann benutze die Map. Und der erste Schlüssel, den Sie verwenden, ist der Inhaltstyp. Es wird Bewerbung Jason sein. Und die zweite ist die Autorisierung. Darüber sprechen wir. Und es wird diese grundlegenden Anmeldeinformationen haben. Das war's. So wird's gemacht. diese Weise werden also Benutzername und Passwort gesendet und nicht nur Benutzername und Passwort. Es könnte einige Websites oder APS , die Sie gebeten haben, den API-Code hier zu senden. Das heißt, es ist nicht immer notwendig, diese Art von Benutzername und Passwort zu verwenden. Dies hängt auch von der API ab, mit der Sie arbeiten. Jetzt. Zuerst war die grundlegende Kunst. Jetzt ist das zweite das Bier. Die Beer-Authentifizierung bedeutet einfach, dass wir uns mit einem Token anstelle eines Benutzernamens und Passworts authentifizieren müssen. Wenn Sie jetzt ein Token haben, gibt diese API an, dass Sie dieses Präfix Bier verwenden müssen. So wird's gemacht. Nicht viel. Auf Lee. In der Autorisierung. Sie haben dieses Bier für Keyword und diesen Token-Wert. Das war's. Das ist der Zugang zur Konservierung von Pose. Und stellen Sie sich vor, wir haben dieses Zugriffstoken. Etwas Wert zu vermitteln. Man kann einen Token-Wert sagen, das ist alles. So benutzt man also diese bessere Kunst. Ich sage es nur noch einmal. Wenn Sie eine API haben, die über einen eigenen API-Schlüssel verfügt, ändern Sie den Autorisierungsschlüssel in diesen bestimmten Schlüssel. Manchmal sagen einige APIs , dass der Schlüssel im Header so sein sollte, und dann der Token-Wert. Sie müssen also die Dokumentation dieser API sehr sorgfältig lesen dieser API sehr sorgfältig , damit Sie keine Fehler machen. Aber denk einfach an den Code hier. Dies geschieht meistens wenn wir irgendeine Art von Authentifizierung durchführen. Ich weiß, dass du vielleicht fragst, okay, aber es gab keine echte API. Also zeige ich dir nur ein paar Beispiele. Erstens können Sie diese Nachrichten-API Punkt ORG ausprobieren. Es wird Ihnen die neuesten, neuesten Nachrichten und alles geben. Sie können den API-Schlüssel von hier abrufen und die Dokumentation lesen, wie diese API verwenden, um sich zu authentifizieren. Der zweite API-Schlüssel, den Sie erhalten können, ist diese OMB-DAPI. Klicken Sie einfach auf diesen API-Schlüssel und schreiben Ihre E-Mail hier und senden Sie sie ab. Auf diese Weise erhalten Sie Ihren API-Schlüssel und können von hier aus direkt auf die gesamte Filmdatenbank zugreifen . Die anderen APIs oder ob ein Paar hier auch Sie können sich den EPI selbst besorgen. Und dann sind dies die APIs, die eine Cali PA-API für aktuelles Wetter bereitstellen. Siehst du so. Also müssen wir nur die Dokumentation richtig lesen und es selbst ausprobieren. Wenn Sie möchten, können Sie bei dieser Pandemie auch die COVID-Tracking-API erhalten, über die Sie alle COVID-19-bezogenen Daten auf der ganzen Welt erhalten. Damit können Sie auch Ihre eigene Anwendung erstellen. Ich hoffe, Ihnen hat diese Sitzung gefallen. Wenn du möchtest, kannst du einfach hier tippen und es selbst ausprobieren. Versuche so viele Fehler zu machen, dass du am Ende ein besserer Entwickler wirst. Danke. 9. Warum wir Modelle brauchen: Hi, willkommen zurück. In diesem Modul werden wir darüber sprechen, was unsere Modelle sind und warum wir sie genau benötigen. Model ist nur die Klasse, die zur Darstellung bestimmter Daten verwendet wird. Jede App funktioniert mit verschiedenen Datentypen. Offensichtlich ist es mithilfe von Modellen einfacher, die Daten aufzurufen und an die Anwendung weiterzugeben. Wenn Sie sich also an die früheren Beispiele erinnern, haben wir früher Daten direkt von einem Bildschirm zum anderen weitergegeben. Das ist die Map selbst oder der Map-Wert-Abschnitt, an dem wir sie übergeben haben. In der realen Anwendung haben die Daten, die vom Server kommen, jedoch die Daten, die vom Server kommen eine komplexe Struktur. Und wir könnten uns nicht von allen Daten an diesen Schlüssel erinnern. Deshalb verwenden wir Modelle. In diesem Beispiel können Sie sehen, wie wir unsere Modelle erstellen. Angenommen, wir haben Daten eines Benutzers. Also erstellen wir einen Klassenbenutzer und Dan Dove, die Werte, die es gibt, das sind die, alle Daten, die sich innerhalb des Üblichen befinden. Sie sollten so in Form von Instanzvariablen geschrieben werden , wie final int, id, final string name. Dann sollte ein Konstruktor da sein , damit wir den Wert übergeben können und er wird ihm zugewiesen. Und diese Factory-Funktion ist nichts anderes als eine Möglichkeit, diese Daten zu transformieren Daten von außen abzubilden. Und dann ein Objekt dieser Klasse zurückgeben. In einfachen Worten, von der Firebase oder von der API erhalten wir zugeordnete Daten , die Daten zuordnen können. Wir werden es hier schicken, das ist ein Benutzer von Jason. Und dann wird ein Objekt zurückgegeben. Das war's. Das sind also die Begriffe, die wir allgemein bei der Arbeit mit Modellen verwenden. Das ist Serialisierung und Deserialisierung. Die Serialisierung besteht darin, Jason in ein intelligentes Objekt zu konvertieren. Und die Deserialisierung dient zum Konvertieren von JSON-Datenobjekten. Entschleunigung werden wir die meiste Zeit tun. Das heißt, Daten, die in diesem JSON- oder Map-Format kommen werden in ein dunkles Objekt konvertiert. Ich weiß, dass es vielleicht so ist, Sie sich von diesem Konzept überwältigt fühlen, aber es ist sehr einfach, wenn Sie erst einmal den Dreh raus haben. Hier müssen wir also eine Klasse für den Umgang mit der Verzögerung erstellen . Und sie wird Modal-Klasse genannt. Sie denken vielleicht, okay, aber auch ohne Modelle konnten wir unsere Aufgabe erfüllen. Das heißt, diese Anwendung hat perfekt funktioniert. Warum brauchen wir also Modelle genau für unsere Anwendung? Schauen Sie sich dieses Beispiel an. Hier haben wir diese Daten im Kartenformat Name, Benutzer-ID, E-Mail. Die obigen Darstellungen stellen sehr grundlegende Benutzerdaten dar . Wir können sehen, dass die JSON-Zeichenfolge diese Dart-Konvertierungsbibliothek verwendet , wie wir es zuvor getan haben. Und das macht es zu einem String-Wert und gibt den Zuordnungswert zurück. den Wert kann dann auf folgende Weise zugegriffen werden. Das heißt, sobald wir die JSON-Zeichenfolge dekodiert haben, können wir danach einfach hi und dann user und username ausgeben, das ist der Name der Schlüssel dafür. Zuordnung als E-Mail ist ein weiterer Schlüssel und Benutzer-IDs und anderer Schlüssel. Also das haben wir vorhin gemacht. Lassen Sie uns nun untersuchen, was bei diesem Ansatz das Problem ist. Leider gibt JSON-Decodierung eine Map zurück, was bedeutet, dass Sie diese Art von Datenwerten erst zur Laufzeit kennen . Also hier ist E-Mail oder diese Benutzer-ID eine ganze Zahl, die wir erst kennen , wenn wir sie hier drucken. Und ob es einen Fehler zeigt oder was auch immer. Bei diesem Ansatz verlieren Sie die meisten statisch typisierten Sprachfunktionen. Das sind Typsicherheit, Autovervollständigung und vor allem Ausnahmen bei der Kompilierung. Also Laufzeit, okay, wir verstehen es. Aber kompiliere Zeit, während wir den Code schreiben. Dann wird es auch nicht angezeigt, uns einen Fehler zu geben. Aber wenn wir Modelle verwenden, wird uns das sagen, dass es sich um eine Ganzzahl handelt. Verwenden Sie keine Zeichenfolge oder was auch immer die Ausnahme ist, ist. Das ist keine gute Praxis. Wenn Sie beispielsweise auf die Namen- oder E-Mail-Felder zugreifen, können Sie auch schnell einen Tippfehler eingeben. Ich nehme an, sein Name hasst E-Mails. Es könnte E, Dash Mail oder was auch immer sein. Hier ist es die Benutzer-ID, ich ist Kapital. Wir könnten es klein schreiben. Solche Fehler sind sehr häufig, wenn wir programmieren. Um diese Probleme zu bekämpfen, kommen Modelle ins Spiel, und wir definieren die Art der Werte genau wie diese. Hier haben wir es genau definiert. Es ist eine Ganzzahl, es ist eine Zeichenfolge. Auf diese Weise sind wir beim Erstellen einer Anwendung auf einer sichereren Seite. Und es macht den Code letztendlich weniger anfällig für Fehler, da die meisten Bereiche während der Kompilierzeit behandelt werden. Ich hoffe, Sie haben verstanden, warum wir Modelle brauchen und Sie haben vielleicht nicht verstanden, wie man sie erstellt, aber kein Problem. In der nächsten Sitzung werden wir unser erstes Modell erstellen. Danke. 10. Erstelle unseren ersten Modellkurs: Hi. In dieser Sitzung werden wir unsere erste Modellklasse erstellen. Bringen Sie also vorher Ihren VS-Code heraus. Und ich habe nachgeahmt. Wenn ich auf ein Produkt als in der Debug-Konsole drücke, können Sie sehen, dass alle Eigenschaften Daten sind, die es hat. Und in diesem Zusammenhang müssen wir unsere Modellklasse im Leaf-Ordner erstellen. Lass uns einen neuen Ordner namens models erstellen. Und darin erstellen wir eine Produktpunktdatei. So erstellen Sie ein Modellglas. Erstellen Sie zunächst eine Klasse namens product. Und jetzt gib hier Alda ein, all diese Daten als Instanzvariablen. Das heißt, ich werde endgültige Tinte, ID, dann letzte Zeichenfolge, Titel, dann steigen. Es ist ein bisschen kompliziert hier, also doppelt. Und ich verwende auch keinen Datentyp. Danach können wir die endgültige String-Beschreibung haben, dann den letzten Bildschirm, die Zeichenfolge, Entschuldigung, Kategorie und dann das endgültige String-Bild. Also ja, das sind die Daten, die ein Produkt haben wird. Erstellen Sie danach einen Konstruktor. Aus dem gleichen Grund. Jetzt muss ich schreiben erforderlich. Dann ist dieser Punkt erforderlich Testpunkttitel erforderlich. Diese Strahlen, diese Beschreibung, dieser Punkt bekommen Grad, dieses Bild. Jetzt haben wir also unsere Produktmodellklasse. Es hat alle Daten. Jetzt müssen wir eine Funktion erstellen, die Jason als Eingabe akzeptiert, und dann wird sie dieses Produktobjekt zurückgeben. Um es zu erstellen, müssen wir nur noch ein Produkt von Jason schreiben. Dann akzeptiert es dynamische String-Werte namens Jason. Ich schreibe einfach JSON. Dann wird einfach ein Produkt zurückgegeben. Jetzt oben im Produkt werden wir bald eine Produkt-ID haben. Dann sagen sie Jason BJs Beschreibung, ist das nicht Korruption. Dann mach einen Abschluss, Jason Abschluss. Und dann haben wir endlich ein Bild. Sehen Sie also, das sind alle Schlüssel, die bereits erwähnt wurden, diese Preiskategorie Beschreibung Bild. Wenn wir diese Funktion aufrufen, senden wir diese Daten hierher und sie geben uns ein Produktobjekt. Das war's. Wir haben erfolgreich unser erstes Modell entwickelt. Jetzt. Um es zu benutzen. Wir müssen zu unserer API-Services-Punkt-Datei gehen. Und es ist an der Zeit, dass wir die notwendigen Änderungen an der Funktion vornehmen. Wisse, dass es viele Funktionen gibt und wir werden damit beginnen Holen Sie sich hier alle Post-Funktionen. Zunächst gebe ich ihm einfach einen Rückgabetyp. Von der Liste der Produkte. Das war's. Das ist also der Rückgabetyp. Jetzt erstelle ich einfach zuerst eine leere Liste der Produkte, nenne sie alle Produkte und sie wird leer. Jetzt werde ich diesen Jason Dodd dekodieren Körper in einer Variablen hier haben. Und ich werde diese Jason-Sache durchgehen , die alle Produkte enthält. Ich werde eine Schleife durchgehen und mir hier ein bestimmtes Produkt besorgen. Und einfach, in allen Produkten werde ich ein Produkt von Jason hinzufügen und hier das JSON senden. Das war's. Und am Ende werde ich alle Produkte zurückgeben, das ist eine Liste von Produkten. Was ich hier gemacht habe, ist, dass ich zunächst ein leeres Array erstellt habe, das wir am Ende übergeben werden. Und es wird das Produktobjekt enthalten , wenn es sich um eine Liste des Produktobjekts handelt. Jetzt werden diese Jason response.body im JSON-Format in der Liste des JSON-Formats vorliegen. Also werden wir es einfach durchlaufen und das gesamte Produkt hinzufügen, nachdem wir es über dieses konvertiert haben. Das ist ein Produkt, das von JSON in dieser Produktliste enthalten ist und alle Produkte zurückgegeben hat. Danach müssen wir die Änderungen auf dem Startbildschirm vornehmen , auf dem es ausgegeben wird. Hier, wo wir die Produkte bekommen. Dieser asynchrone Snapshot gibt uns jetzt ein Objekt, kein Objekt, es wird eine Liste von Produkten sein. Zunächst erstelle ich einfach eine Variable, erstelle ich einfach eine die die Indexdaten enthält. Das ist ein einziges Produkt hier. Da es den gesamten Snapshot durchläuft, erhalten wir hier ein einziges Produkt. Und danach müssen wir einfach einen Produktpunkttitel wie diesen schreiben . Also ist es so einfach. Produkt, Bild, Produkt, der Preis dot toString. Und am Ende schreibe ich hier einfach Produkt, Produkt-ID. So wie das. Prüfen wir, ob es funktioniert oder nicht. Ich habe die Anwendung neu gestartet, aber vorher können Sie sehen, wie einfach es ist, den Wert jetzt auszugeben. Wir müssen den Schlüssel nicht immer wieder schreiben, wir können diesen Punktoperator einfach direkt verwenden und wir werden die Daten erhalten. Es besteht aus. Wenn ich jetzt auf diesen Login-Button klicke, findest du hier alle Daten die schon vorher da waren, aber jetzt verwenden wir hier Modelle. Dies ist also eine minimale Erklärung Modelle und warum wir sie verwenden. Und vertrauen Sie mir, wenn Sie viele Daten haben, Modelle für Sie sehr nützlich. Im nächsten Video werden wir Modelle für Produktdetails und andere Seiten verwenden . Danke. 11. Änderungen in Frontend: Hi. Im letzten Video nehmen wir diese Änderungen auf dem Startbildschirm vor , damit wir diese Daten von der API abrufen und die neben unserer Modellklasse ändern können , dh die Produktmodelle weniger. In dieser Sitzung werden wir jetzt auch die erforderlichen Änderungen in der Einzelproduktfunktion vornehmen . Um das Modell zurückzugeben. Bringen Sie Ihren VSCode-Editor heraus und gehen Sie zu APA-Umfragen Punkt neun. Das erhält eine Einzelproduktfunktion. Wir werden einfach, wir werden kein JSON zurückgeben. Stattdessen werde ich diese Daten in jedem Geschäft aufbewahren, diese Daten in einer Variablen namens Töpfchen. Und dann werde ich einfach den Produktpunkt von Jason drehen und den Körper darin weitergeben. Es wird also ein einzelnes Produktobjekt zurückgegeben. Und das brauchen wir. Okay? Wenn wir die Änderung an einem einzelnen Produkt vorgenommen haben, müssen wir auf jeden Fall die Änderung an einem einzelnen Produkt vorgenommen haben, auch zum Produktdetailbildschirm gehen. Nehmen Sie die Änderungen vor, um ein Modell zu verwenden. Statt dieser Jason-Sache. Wir haben unseren zukünftigen Baumeister hier. Wir bekommen das Modell , das das Produktmodell ist. In diesem Schnappschuss. Hier schreibe ich einfach diesen Datentyp Produkt und speichere ihn dann in Snapshot-Punktdaten. Okay? Jetzt haben wir dieses Produkt hier und ich werde einfach alles hier entfernen. Und ich habe das Punktbild angesprochen, dann den Produktpunktpreis als die Produkt-Punkt-Produktkategorie . Und schließlich die Produktpunktbeschreibung. Sie können also selbst sehen, dass es so viel ordentlicher und einfacher ist, wenn wir Modelle verwenden. Denn auf jeden Fall beim Schreiben von Map, das ist Jason, können wir in diesem Schlüssel einen Fehler machen , dass diese Rechtschreibfehler oder was auch immer. Es ist also besser, wenn wir Modelle verwenden. Lass es uns testen. Funktioniert es richtig oder nicht? Wenn ich auf Anmelden klicke, gelangen wir zum Startbildschirm. Und wenn ich auf dieses Produkt C klicke, gibt es keinen Fehler. Ich habe das geändert, aber es funktioniert perfekt. Also denkst du vielleicht, okay, unsere Arbeit hier ist getan. Wenn ich jedoch auf diese Kartenschaltfläche klicke, wird dieser Fehler angezeigt, da wir auch diesen Karteikartenbildschirm vergessen haben. müssen wir ändern, da es auch diese Funktion verwendet. Das bekommt hier ein einziges Produkt. In ähnlicher Weise müssen wir hier dasselbe tun. Ich werde diesen Produktdatentyp verwenden. Und dann synchronisiere Snapshot-Punktdaten. Okay? Und dann schreibe einfach hier, Produktpunkt, Produktpunktbild. Dann hier diese Menge, es ist okay, weil wir diese Menge von hier bekommen. Das müssen wir also nicht ändern. Aber okay, ich habe Check-Knoten, es gibt keine andere Sache zu ändern. Sehen wir uns unsere Anwendung noch einmal an. Ob es gut funktioniert oder nicht. Ich klicke auf den Login. Okay. Wir sind auf dem Startbildschirm. Wenn ich jetzt auf die Karte klicke, sehe ich, dass kein Fehler vorliegt. Nun, da wir auch hier Modelle anstelle von Map- oder Rohdaten von Jason verwenden. Das war's. So sollten wir Modelle verwenden und implementieren. Im nächsten Video werden wir über einige andere Tools sprechen, werden wir über einige andere Tools sprechen mit denen wir auf einfache Weise Modelle erstellen können. Danke. 12. Werkzeug zur einfachen Generierung von Modellen: Hi. Bis jetzt erstellen wir unsere Modelle selbst. Nehmen wir an, in diesem Produkt war es einfach, weil es nur vier Variablen oder Daten gab . Deshalb haben wir das alles alleine gemacht. Aber wenn wir APIs verwenden, wird es oft Daten geben, die sehr komplex sind. In diesem Szenario benötigen wir möglicherweise einige Tools, mit denen wir unsere Modelle einfach erstellen können. Auf dem Markt gibt es nur wenige Tools , die diese Aufgabe erheblich erleichtern. Es gibt zwei Herangehensweisen. Eine verwendet ein Online-Tool und die andere Methode verwendet Abhängigkeiten. Hier können Sie sehen, dass wir eine Abhängigkeit namens JSON serialisierbar haben. Das kannst du benutzen, wenn du willst. Definitiv benutzen viele Leute es. Ich werde dir nur Jason serialisierbar zeigen. Okay, und dann höre ich zu, dass ich packe. Sehen Sie, das ist das Paket, von dem ich spreche. Dies wird Jason serialisierbar genannt. Wenn Sie möchten, können Sie es auf jeden Fall verwenden. Sie werden viele Ressourcen finden, wie Sie es verwenden können. Aber in dieser Sitzung werde ich dieses Online-Tool namens „ Quick Type.io“ verwenden . Ist das auch perfekt. Beide werden stark genutzt. Also schau mal ob ich einfach flatternd unseren Dart Jason zum Model schreibe . Dann bekommst du hier beide. Okay, schätze ich. Ja, das ist sofort Parse Json in jeder Sprache. Okay? Wir haben das hier. Und um es praktisch zu machen, werde ich eine andere APA verwenden. Zuvor haben wir diese gefälschte Store-API verwendet. Aber jetzt möchte ich diese API nicht mehr verwenden , da wir bereits wissen, dass die Daten von ihr bereitgestellt werden. Also werde ich dieses fruchtige vice.com verwenden. Es ist ein Webservice, der Daten für alle Arten von Obst liefert. Es ist eine kostenlose API. Deshalb benutze ich es. Und hier siehst du alle Endpunkte. Es erlaubt. So können wir die Daten einer bestimmten Frucht wie dieser erhalten. Und wir können auch alle Früchte von diesem Endpunkt bekommen, das heißt APS Slash Fruits Slash on. Dieser Endpunkt gibt uns eine Liste dieser Kartendaten, die alle Früchte enthalten. Ohne weitere Zeit zu verschwenden, möchte ich Ihnen zeigen, wie Sie dieser App quick.io Modelle erstellen können. Also hier schreibe ich einfach apple und tippe enter. Es wird uns die Datenstruktur wie diese geben. Hier kann man sagen, dass es nicht so komplex ist, aber diese KEY-Zeichenfolge, der Wert ist string, string, ist eine ganze Zahl, aber diese Nährstoffe sind wieder ein Map-Wert, der enthält String-Schlüssel und double als Werte. Also kopiere ich einfach diese Struktur und gehe zu dieser App dot quick type und füge sie hier ein. Aber bevor Sie einfügen und sich nur an Ihre Sprache erinnern, müssen Sie Dart verwenden. Und dann entferne ich einfach alles hier füge es in den Namen ein. Du musst diesen Fruchtnamen schreiben. Du und nicht du musst, du kannst hinzufügen, was ich will. Aber da es sich um Daten einer bestimmten Frucht handelt, lese ich mich durch. Okay? Jetzt in der Ausgabe sehen Sie, dass wir dieses Modell hier haben. Das, vieles wurde automatisch gemacht oder sonst mussten wir alles selbst schreiben und das ist nicht immer machbar. Also einfach, was ich jetzt tun werde, ist alles zu kopieren, all diese Daten und zu unserem VS-Code zu gehen. Und im Modellordner erstelle ich einfach ein Modell namens Fruit dot dot und füge dann alles hier ein. Sie könnten also sagen, dass diese Ära nur daran liegt , dass die Daten hier nicht null sind, so. Und da es erforderlich ist, müssen wir einfach das erforderliche Schlüsselwort schreiben , damit dieser Fehler behoben ist. Das war's. Dann auch die Ernährung, wir müssen sie einfügen und Alda hat hinzugefügt ist jetzt behoben. Wenn Sie also in der heutigen Klasse nachschauen, ist das Einzige, was erforderlich ist, dies. Dies sind die Daten oder die Variablen. Dann akzeptieren wir dies durch diesen Konstruktor von Jason. Wir haben es bereits in dem Produkt gemacht. Warum? Wenn wir fix oder API verwendet haben, wird es automatisch erstellt. Diese Json-Sache erstellt nur benachbarte Daten im JSON-Format und erstellt von Jason die Daten in diesem Modellformat. Und jetzt denken Sie vielleicht darüber nach, warum es zwei verschiedene Klassen gibt, auch die Ernährungsklasse. Nur weil dieser Nährwert wieder eine Landkarte ist. Was auch immer wir in map haben, wird wieder in eine Klasse umgewandelt. Diese Ernährung enthält also Kohlenhydrate, Proteine, Fette, Kalorien, Hoover, diese Werte. Also nochmal, dies ist eine Klasse und vertrauen Sie mir, das wird uns sehr helfen denn im Moment haben alle diese Daten ihren Datentyp intakt. Wir werden also bei der Dosis keinen Fehler machen. Und wenn du sehen willst, welche Antwort wir so bekommen werden, kannst du einfach so auf diapers.com gehen und einfach schreiben, das ist die Antwort, mit der wir uns befassen werden. Sie sind vielleicht gerade überwältigt, aber glauben Sie mir, das ist einfach, diese Daten sind nur eine Daten. Und danach wird es mit verschiedenen, unterschiedlichen Früchten wiederholt. Das war's. Wir haben also gelernt, unser JSON-Modell zu erstellen. Ohne Herz, ohne alles selbst zu tippen. Normalerweise verwende ich diese Art von Online-Tools, weil sie die Arbeit sehr schnell erledigen und wir uns nicht um die Datentypen kümmern müssen und ob es etwas ist, wenn etwas nicht stimmt. Im nächsten Video werden wir also unsere Funktionen in der Saw Dart-Datei der API-Services erstellen unsere Funktionen in der Saw Dart-Datei der API-Services , um alle Fruchtdaten abzurufen und in unserer Anwendung anzuzeigen. Danke. 13. Verbrauche eine neue Pause api: Willkommen zurück. Jetzt haben wir unser Modell fertig. Es ist Zeit. Wir erstellen eine Funktion in unserer API-Services-Punkt-Datei. Damit wir wie zuvor die Früchte holen können, alle Fruchtdaten. Also geh einfach runter und gib einen Kommentar zu Obst holen ab. Dann werden wir einfach eine zukünftige Funktion namens get on fruits haben namens get on fruits und definitiv wird sie als sinc-Funktion gewinnen. Dann haben wir eine Frucht-URL-Variable. Und hier werden wir unseren URI analysieren, das ist URL, der hier ist. Entschuldigung, ja. Welches wird dieser API-Schrägstrich sein, Früchte schneiden diesen. Geh einfach und füge es ein. Ich verwende dieses kostenlose API-Soda. Ich muss die API-Schlüssel des Kontos nicht erstellen . Diese Daten sind null. Aber du, ich habe dir bereits beigebracht, wie man auch eine authentifizierte Anfrage stellt. Wenn Sie möchten, können Sie es auch mit anderen APIs versuchen. Wir haben also diese Antwort hier. Einfach, dass es das p dot get ist. Dann auf Frucht-URL. So wie das. Dann werde ich einfach eine Parteivariable erstellen. Und Jen, hier werde ich json dot d-Code schreiben , damit er in eine Zeichenfolge dieses Antwortkörpers in eine Map konvertieren kann eine Zeichenfolge . Das war's. Dies ist nur die Arbeit dieser JSON-Punkt-Decodierung. Es konvertiert einen String in ein JSON-Format. Das war's. Jetzt hier. Zuvor haben wir hier eine Liste von Produktvariablen erstellt eine Liste von Produktvariablen und sie dann einem leeren Array zugewiesen. Und dann verwenden wir einfach diese for-Schleife und fügen alle Daten hinzu. Das sind diese einzelnen Daten dazu. Aber jetzt zeige ich Ihnen eine andere Art, dasselbe zu tun. Es macht nur den Job in einer Zeile, diese Studienfront. Ich besorge mir diese Liste mit Früchten. Ich nenne alles Früchte. Dann schreibe ich einfach Party Dot Map. Ich werde hier eine bestimmte Frucht bekommen. Und dann, und ich werde es durch die zwei Tage von der JSON-Funktion senden . Okay? Und einfach werde ich endlich erstellen, ich werde alles zu einer Liste machen. Was es tut, ist das Mapping durch den Körper, das ist diese Reaktion. Und dann konvertieren Sie jede Art und Weise, wie sie an das Fruchtobjekt grenzen, und geben Sie es dann zurück. Das heißt, es gibt es zurück. Und schließlich ist alles, was danach erledigt ist, dieses Mapping abgeschlossen. Alles wird in eine Liste umgewandelt. Das war's. Und einfach werde ich alle Früchte hier zurückgeben. Und diese Funktion gebe ich ihr diese generische Datentypliste von Früchten, damit wir wissen, was sie zurückgibt. Okay? Also ist dieser Teil fertig. Unsere Funktion ist bereit. Jetzt ist es an der Zeit, einen neuen Bildschirm zu erstellen, damit wir diese Werte dem Applet in der Anwendung anzeigen können. Ich nenne es einfach alles Früchte dot, dot. Importieren Sie jetzt wie üblich Material. Dann nenne jede Staatslistenklasse von mir Früchte Bildschirm. Jetzt wird ein Gerüst in der App zurückgegeben. Geben wir ihm eine Höhe von 0. Hintergrundfarbe der Farben dot arrange x. Und dieses Mal werde ich alles Früchte geben. Und zentriere dann, dass ich diesen Körper eingezeichnet habe. Lass uns einen zukünftigen Baumeister haben. Ich hoffe, Sie fühlen sich jetzt sehr wohl mit dieser Art von Code, da wir das seit sehr langer Zeit tun . Ich verwende API-Dienste und erhalte dann alle Früchte. So einfach ist das. Dieser Builder wird einen Kontext und eine Momentaufnahme haben. Es wird in einem einzigen Schnappschuss sein. Dann überprüfe ich das. Wenn der Schnappschuss DOD die Taube hat. Wenn nicht, gebe ich eine kreisförmige Fortschrittsanzeige zurück. Und wenn es Daten hat, kehre ich in der Listenansicht Dot Builder zurück. Jetzt ist die Anzahl der Artikel Snapshot Dot, Dot, Dot, Länge. Und Item Builder wird weg sein, Texte und Index. Jetzt erstelle ich hier eine Variable, einen Typ float, und speichere diesen Snapshot-Wert in einem Snapshot-Punktdaten und dann im Index. Es wird also dieses einzigartige Produkt sein. Das war's. Und dann gebe ich es zurück, gebe eine Karte zurück. Und darin habe ich eine untergeordnete Eigenschaft und dann das Budget im Listenstil. In diesem Titel werde ich also ein Zentrum haben und dann das Kind, das uns zeigt, was uns den Fruchtnamen zeigt, das ist der Name des Lebensmittelpunkts. So einfach ist das. Nur aufgrund von Objekten können wir unsere Variablen jetzt so einfach ausgeben oder verwenden. Und dann möchte ich im Untertitel alle Nährwerte zeigen , also Protein, Kohlenhydrate und Fette. Diese einfach, ich werde ein Text-Widget haben. Es wird Karton hohe Raten schreiben. Und jetzt werde ich diesen Fruchtwert verketten. Und dann ein Punkt, dann Nährstoffe, dann Punkt und sehen. Jetzt kann ich einfach Karbide von hier aus verwenden , nur weil es in einem anderen Objekt gespeichert ist. Sonst musste ich diese wichtigen Kohlenhydrate verwenden und werde den Fehler auf jeden Fall hier machen. Ich kopiere es einfach und füge es zweimal ein. Der zweite wird Protein sein. Es wird einfach Protein sein. Und der dritte wird fett sein. Und es wird einfach fett sein. Das war's. Jetzt in der Reihe werde ich eine Hauptachsenausrichtung des Haupt-Existierungspunktraums gleichmäßig geben , nur um es gut aussehen zu lassen. Um es zu testen, müssen wir jetzt zu unserer Hauptpunktpunktdatei gehen. Und statt dieser Login-Datei müssen wir diesen Fruchtbildschirm schreiben. Das war's. Schauen wir es uns an. Ich habe meine Bewerbung neu gestartet. Okay, der Bildschirm sieht gut aus und alle Daten sind hier. Apfel, Aprikosen, Banane und dieses kohlenhydrathaltige Proteinfett. Wenn Sie möchten, können Sie diese Janus-Familienbestellung unabhängig von der Anzahl der Kalorien ausgeben . Wenn Sie möchten, können Sie diese auch ausgeben. Ich verwende nicht sowohl die führende als auch die nachfolgende Eigenschaft des Listenstils. Ich will dir nur zeigen, wie das geht. Wie wir mit Online-Tools so einfach Modelle erstellen können. Und wir haben auch erfolgreich eine neue API konsumiert, die so fruchtig ist. Und wenn Sie möchten, können Sie auch einen anderen Bildschirm erstellen, um ein einzelnes Fruchtdetail anzuzeigen, wenn Sie möchten, es liegt an Ihnen. Aber ich hoffe euch haben unsere Videos bis hier gefallen. Dieses Modell war sehr wichtig , da Sie in der realen Anwendung Modelle für alles erstellen Benutzer, Kontexte oder andere was Benutzer, Kontexte oder andere Daten oder Informationen sind, die Sie in Ihrem -Anwendung erstellen Sie Modelle dafür. Das war's also für diese Sitzung. Wir sehen uns im nächsten Modul. Danke.