Erste Schritte
Für diese Sitzung brauchen Sie nur Signal Lab: Alles geht an 127.0.0.1, diesen Computer, daher sind weder Gerät noch Netzwerk noch Firewall-Regel beteiligt. Sie werden:
- eine OSC-Nachricht senden und ihr Eintreffen beobachten;
- dieselbe Nachricht im Inspektor sehen;
- sie in der Bibliothek speichern und von überall erneut senden;
- eine emulierte HTTP-API starten und ihr eine Anfrage stellen;
- ein Experiment gegen diese API ausführen, lesen, warum es fehlschlägt, es korrigieren und eine Prüfung hinzufügen.
Falls Sie Signal Lab noch nicht installiert haben, siehe Installieren und aktualisieren. Unsicher, wo im Fenster etwas zu finden ist? Siehe Das Fenster.
Eine OSC-Nachricht senden und ihr Eintreffen beobachten
Zuerst etwas, das die Nachricht empfängt: der Monitor der Ansicht OSC.
- Öffnen Sie in der Seitenleiste OSC.
- Setzen Sie unter Monitor das Feld Empfangsadresse auf
127.0.0.1:9000, damit der Monitor nur auf diesem Computer empfängt. - Drücken Sie Empfangen. Die Schaltfläche wird zu Stoppen, die Konsole meldet, dass der Monitor empfängt, und der Monitor erscheint als Job in der Leiste des unteren Bereichs.
Jetzt die Nachricht, vom Sender daneben:
- Lassen Sie unter Sender das Feld Ziel Host:Port auf
127.0.0.1:9000, dem Port, auf dem der Monitor empfängt. - Lassen Sie OSC-Adresse auf
/hello/avatar/1und das eine Float-Argument unter Argumente auf1.0— oder geben Sie eine eigene Adresse und eigene Werte ein. - Drücken Sie Senden oder Enter im Feld für Ziel oder Adresse.
In der Tabelle des Monitors erscheint eine Zeile: Zeit des Eintreffens, Von (127.0.0.1 und der Port, von dem gesendet wurde), Adresse und Argumente. Unter dem Sender bestätigt eine Zeile, was gesendet wurde und wie groß es in Bytes ist; senden Sie erneut, zählt sie die Wiederholungen.
Ein Hinweis zur Firewall?
Unter Windows kann beim Start des Monitors unter der Kopfzeile ein Hinweis zur Windows-Firewall erscheinen. Er betrifft Nachrichten von anderen Rechnern; Verkehr auf 127.0.0.1 wird nie gefiltert. Drücken Sie vorerst Nicht jetzt — Der Firewall-Hinweis erklärt, wann Sie zulassen sollten.
Im Inspektor ansehen
Der Inspektor zeichnet jeden Frame auf, den ein Werkzeug sendet und empfängt — aber nur, solange der Mitschnitt läuft.
- Öffnen Sie im unteren Bereich die Registerkarte Inspektor.
- Drücken Sie Mitschnitt starten. Der Punkt der Registerkarte leuchtet auf.
- Drücken Sie im Sender noch einmal Senden.
Zwei Zeilen erscheinen, die neueste zuerst: die Nachricht, wie sie gesendet wurde (→) und wie der Monitor sie empfangen hat (←), jeweils mit Protokoll, Adresse der Gegenseite, Größe und einer Zusammenfassung. Klicken Sie auf eine: Frame-Details zeigt, welches Werkzeug sie gesendet oder empfangen hat und über welche Adressen, unter Dekodiert die dekodierte Nachricht und unter Bytes die Bytes, aus denen sie bestand.
Drücken Sie Mitschnitt beenden, wenn Sie fertig sind; ausgeschaltet kostet der Mitschnitt nichts. Mehr unter Inspektor.
Als Signal speichern und erneut senden
Eine Nachricht, die Sie wieder brauchen werden, gehört in die Signalbibliothek.
- Drücken Sie in der Ansicht OSC unter dem Sender Speichern….
- Setzen Sie im Dialog In der Bibliothek speichern das Feld Name auf
First messageund Ordner aufTutorial— ein neuer Ordner entsteht, sobald Sie hinein speichern. - Drücken Sie Speichern.
Der Sender ist jetzt an dieses Signal gebunden: Die Schaltfläche zeigt Gespeichert, und ein Chip daneben zeigt, wo das Signal liegt. Ändern Sie das Argument, vermerkt der Chip die Änderung; Speichern (Ctrl+S) würde das Signal aktualisieren.
Senden Sie es jetzt erneut, auf drei Arten:
- Aus der Bibliothek. Klicken Sie auf den Chip: Die Ansicht Signale öffnet sich mit dem Signal ausgewählt im Ordner
Tutorial(oder öffnen Sie Signale und klicken Sie es dort an). Drücken Sie Senden oder Ctrl+Enter; auch ein Doppelklick darauf in der Liste sendet es. - Von überall. Drücken Sie in einer beliebigen Ansicht Ctrl+K, tippen Sie
firstund drücken Sie Enter. - Aus einem Experiment. Wenn Sie einen Knoten hinzufügen, listet das Menü Ihre Signale unter Gespeicherte Signale auf, bereit, zu einem Schritt zu werden, der eines davon sendet.
Jedes Mal zeigt der Monitor die eintreffende Nachricht, und die Konsole nennt das Signal. Ein Signal sendet genau das, was seine Ansicht gesendet hätte. Mehr unter Signale.
Wenn Sie mit OSC fertig sind, drücken Sie beim Monitor Stoppen.
Eine emulierte API befragen
Signal Lab bringt fünf Emulatoren mit, alle auf 127.0.0.1. Einer davon, Demo-API, ist eine HTTP-API auf 127.0.0.1:8080 mit diesen Routen:
| Anfrage | Antwort |
|---|---|
GET /health | 200 mit {"status":"ok","time":"…"} — der aktuellen Uhrzeit |
GET /users/:id | 200 mit dem Benutzer dieser ID, etwa {"id":"42","name":"User 42"} |
POST /users | 201 mit einem Location-Header und der neuen ID |
GET /slow | 200 nach 1,5 Sekunden |
beliebige Methode, /flaky | 503, 503, dann ab der dritten Anfrage 200 |
| alles andere | 404 |
- Öffnen Sie Emulatoren. Die Bibliothek listet die fünf auf; wählen Sie Demo-API.
- Drücken Sie Starten. Der Emulator antwortet jetzt auf
127.0.0.1:8080und läuft als Job. - Öffnen Sie HTTP. Die Methode ist
GET; setzen Sie die URL aufhttp://127.0.0.1:8080/health. - Drücken Sie Senden oder Enter in der URL.
Unter Antwort sehen Sie Status 200, Latenz, Größe, die Antwort-Header und den JSON-Body. Senden Sie dreimal an http://127.0.0.1:8080/flaky: zwei Antworten 503, dann 200 — so sieht ein Dienst, der sich erholt, für einen Client aus, der es erneut versucht.
Zurück in Emulatoren zählt der Bereich Live jede Anfrage, und Empfangen listet jede einzeln auf, mit der Regel, die sie beantwortet hat, und der Antwort. Lassen Sie die Demo-API für den nächsten Teil laufen. Mehr unter Emulatoren.
Ein Experiment ausführen
Ein Experiment ist ein Ablauf von Schritten, den Sie immer wieder ausführen können. Das Experiment, mit dem Signal Lab beim ersten Mal öffnet — die Vorlage HTTP-Prüfung —, sendet eine Anfrage an http://127.0.0.1:8080/ und prüft, ob die Antwort 200 ist.
Die Vorlage öffnen
- Öffnen Sie Experimente.
- Zeigt die Arbeitsfläche nicht vier Knoten — Start, HTTP-Anfrage, HTTP-Status, Ende —, drücken Sie ☰ links in der Werkzeugleiste (Experimente), wählen Sie in der Liste der Vorlagen HTTP-Prüfung und drücken Sie Experiment öffnen. Das Öffnen ersetzt das Experiment auf der Arbeitsfläche; Ctrl+Z holt das vorherige zurück.
Klicken Sie auf einen Knoten, um seine Einstellungen rechts unter Eigenschaften zu sehen. Experimente speichern sich beim Bearbeiten von selbst.
Ausführen und lesen, warum es fehlschlägt
- Drücken Sie Experiment ausführen.
Unter der Arbeitsfläche öffnet sich die Durchlauf-Zeitleiste, mit einer Zeile pro Schritt, wenn er beginnt (Läuft), und einer weiteren, wenn er endet: die Zeit, der Knoten und wie es ausging. Dieser Durchlauf schlägt fehl:
- Start besteht und nennt den Startwert des Durchlaufs.
- HTTP-Anfrage besteht: Die Anfrage ging hinaus, und eine Antwort kam zurück,
HTTP 404. - HTTP-Status schlägt fehl: Erwartet war
200, empfangen wurde404.
Die Demo-API hat keine Route für / und antwortete daher mit 404 — und die Prüfung hat es bemerkt. Die Zeile oben in der Zeitleiste zeigt Fehlgeschlagen und den Grund. Klicken Sie auf eine Zeile, um ihren Knoten auf der Arbeitsfläche auszuwählen.
Die Anfrage selbst ist fehlgeschlagen?
Schlägt der Schritt HTTP-Anfrage mit einer abgelehnten Verbindung fehl, empfängt nichts auf 127.0.0.1:8080: Starten Sie die Demo-API in der Ansicht Emulatoren und führen Sie das Experiment erneut aus.
Die Anfrage korrigieren
- Klicken Sie auf den Knoten HTTP-Anfrage.
- Ändern Sie unter Eigenschaften das Feld URL in
http://127.0.0.1:8080/health. - Drücken Sie Experiment ausführen.
Diesmal besteht jeder Schritt: HTTP-Status meldet Bedingung erfüllt, Ende meldet Abgeschlossen, und der Titel der Zeitleiste zeigt Bestanden.
Eine Prüfung hinzufügen
Ein Status 200 sagt, dass der Dienst geantwortet hat, aber nicht, was er geantwortet hat. Prüfen Sie auch den Body:
- Klicken Sie auf den Knoten HTTP-Status.
- Drücken Sie unter Eigenschaften auf Danach hinzufügen — oder drücken Sie A, während die Arbeitsfläche den Fokus hat. Ein Menü der Knoten öffnet sich, mit einem Suchfeld.
- Tippen Sie
assert_bodyund drücken Sie Enter. Ein Knoten Antworttext wird zwischen HTTP-Status und Ende eingefügt, bereits verbunden, und sein Feld Enthält Text ist bereit für die Eingabe. - Tippen Sie
"status":"ok". - Drücken Sie Experiment ausführen.
Der neue Schritt besteht. Ändern Sie den Text in etwas, das der Body nicht enthält, und führen Sie erneut aus, um ihn mit Begründung fehlschlagen zu sehen.
Was ein Durchlauf hinterlässt
- Einen Bericht. Endet ein Durchlauf, erscheint im Titel der Zeitleiste Bericht gespeichert; fahren Sie mit der Maus darüber, um die Datei zu sehen. Jeder Durchlauf, der endet, ob bestanden oder fehlgeschlagen, schreibt einen in den Ordner
runsIhres Datenordners, mit den verwendeten Werten und jedem Schritt. Im Browser ist es ein Download-Link. - Einen Startwert. Der Titel zeigt außerdem den Startwert des Durchlaufs mit Fixieren: Zufallswerte eines Durchlaufs folgen seinem Startwert, und wenn Sie ihn fixieren, wiederholen sie sich exakt.
Mehr unter Durchläufe und Berichte.
Aufräumen
Drücken Sie in der Kopfzeile Alle stoppen: Das stoppt die Demo-API und alles andere, was noch läuft. Ihr Signal, das Experiment und seine Berichte bleiben in Ihrem Datenordner.
Wie es weitergeht
- Konzepte: die Ideen hinter Ansichten, Signalen, Jobs, Emulatoren und Experimenten.
- Experimente: der Editor im Ganzen, und jede Art von Knoten unter Knoten.
- OSC, HTTP und die Seiten der anderen Protokolle, wenn Sie Signal Lab auf echte Technik richten.
- Die Kommandozeile: dasselbe Experiment aus einem Terminal oder einer Pipeline ausführen.