Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m450:learningunits:lu08:variablenbruno [2025/09/18 09:36] – [Variablen für Pfade] kmaurizi | modul:m450:learningunits:lu08:variablenbruno [2025/09/18 10:54] (aktuell) – [Hinweise & Doku] kmaurizi | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== LU08b - Variablen einsetzen mit Bruno ====== | ||
| - | |||
| - | <WRAP center round info 60%> | ||
| - | Variablen in Bruno erleichtern das Anpassen von Requests an unterschiedliche Bedingungen. | ||
| - | </ | ||
| - | |||
| ====== LU08b - Variablen einsetzen mit Bruno ====== | ====== LU08b - Variablen einsetzen mit Bruno ====== | ||
| Zeile 29: | Zeile 23: | ||
| Siehe [[https:// | Siehe [[https:// | ||
| - | ===== Variablen für Daten ===== | + | ===== Environment aktivieren |
| - | Mit Variablen | + | Damit die Variablen |
| - | ==== Beispiele ==== | + | |
| - | === Erstellen und Lesen von Daten === | + | - Oben in der Menüleiste findest du ein Auswahlfeld '' |
| - | | + | - Wähle dort das gewünschte Environment |
| - | - Ich speichere die Kundennummer | + | |
| - | - Ein weiterer Request verwendet diese Variable, um den vorher erstellten Kunden zu lesen. | + | |
| - | + | ||
| - | === Authentifikation === | + | |
| - | Bei vielen APIs brauchen wir ein Token, welches unsere Identität und Berechtigungen enthält. | + | |
| - | Dieses Token erhalten wir, indem wir einen Login-Request senden. | + | |
| - | + | ||
| - | - Ein Request sendet die Login-Daten an die API. Als Antwort erhalte ich ein Authentifizierungstoken. | + | |
| - | - Ich speichere das Token in einer Variablen. | + | |
| - | - Bei jedem weiteren Request sende ich das gespeicherte Token mit. | + | |
| - | + | ||
| - | ==== Umsetzung ==== | + | |
| - | Ich zeige hier ein Beispiel, wie ich das mit Bruno umsetze. | + | |
| - | + | ||
| - | === 1. Login student === | + | |
| - | Der Request sendet die Login-Daten für einen Studenten. | + | |
| - | Die Response ist eine JSON-Struktur, die das Token enthält. | + | |
| - | + | ||
| - | ** Script im Bereich " | + | |
| - | + | ||
| - | <code javascript> | + | |
| - | test(" | + | |
| - | // HTTP-Status prüfen | + | |
| - | expect(res.status).to.equal(200); | + | |
| - | + | ||
| - | // JSON-Daten | + | |
| - | const data = res.json(); | + | |
| - | + | ||
| - | // Token im Environment speichern | + | |
| - | | + | |
| - | }); | + | |
| - | </ | + | |
| - | + | ||
| - | === 2. Lies alle Anmeldungen zu einem Studenten === | + | |
| - | Dieser | + | |
| - | Dazu muss das Token aus dem ersten Request mitgesendet werden. | + | |
| - | Dieses Token wird im Header des Requests mitgesendet und nicht in der URL. | + | |
| - | + | ||
| - | ** Token in " | + | |
| - | + | ||
| - | * Key: '' | + | |
| - | * Value: | + | |
| - | + | ||
| - | ===== Hinweise & Doku ===== | + | |
| - | - Tests/ | + | |
| - | - JavaScript-API Referenz (z. B. bru.setEnvVar): | + | |
| - | ---- | + | So kannst du mit denselben |
| - | {{tag> | + | |
| - | [[https:// | + | |
| - | + | ||
| - | ===== Variablen für Daten ===== | + | |
| - | Mit Variablen können wir auch Werte aus einer Response speichern und in einem anderen Request wiederverwenden. | + | |
| - | + | ||
| - | ==== Beispiele ==== | + | |
| - | === Erstellen und Lesen von Daten === | + | |
| - | - Ein Request speichert einen neuen Kunden. Als Antwort liefert die API die Kundennummer. | + | |
| - | - Ich speichere die Kundennummer in einer Variablen. | + | |
| - | - Ein weiterer Request verwendet diese Variable, um den vorher erstellten Kunden zu lesen. | + | |
| - | + | ||
| - | === Authentifikation === | + | |
| - | Bei vielen APIs brauchen wir ein Token, welches unsere Identität und Berechtigungen enthält. | + | |
| - | Dieses Token erhalten wir, indem wir einen Login-Request senden. | + | |
| - | + | ||
| - | - Ein Request sendet die Login-Daten an die API. Als Antwort erhalte ich ein Authentifizierungstoken. | + | |
| - | - Ich speichere das Token in einer Variablen. | + | |
| - | - Bei jedem weiteren Request sende ich das gespeicherte Token mit. | + | |
| - | + | ||
| - | ====== LU08b - Variablen einsetzen ====== | + | |
| - | + | ||
| - | <WRAP center round info 60%> | + | |
| - | Variablen in Bruno erleichtern das Anpassen von Requests | + | |
| - | </ | + | |
| - | + | ||
| - | ===== Variablen für Pfade ===== | + | |
| - | Im Verlauf der Entwicklung wird eine Applikation zunächst in der Entwicklungsumgebung ausgeführt. | + | |
| - | Für die Requests in Bruno bedeutet dies in der Regel, dass unsere API unter einem Pfad wie '' | + | |
| - | Später werden wir die Applikation auf unser Testsystem deployen. | + | |
| - | Der Pfad im Testsystem könnte z.B. '' | + | |
| - | + | ||
| - | Ich möchte meine API-Tests in beiden Umgebungen nutzen können. Welche Möglichkeiten habe ich? | + | |
| - | * Ich passe jedesmal den Pfad in allen Requests an. | + | |
| - | * Ich erstelle Kopien aller Requests – einmal mit dem Pfad des Testsystems und einmal mit dem Pfad der Entwicklungsumgebung. | + | |
| - | * Ich verwende eine Umgebungsvariable und passe jeweils nur den Wert dieser Variablen an. ✅ | + | |
| - | + | ||
| - | Um eine solche Umgebungsvariable einzusetzen, | + | |
| - | - Definiere | + | |
| - | - Lege den Wert fest (z. B. '' | + | |
| - | - Füge die Variable in den Pfad deiner Requests ein, z. B. '' | + | |
| - | + | ||
| - | Siehe [[https:// | + | |
| ===== Variablen für Daten ===== | ===== Variablen für Daten ===== | ||
| Zeile 177: | Zeile 83: | ||
| ===== Hinweise & Doku ===== | ===== Hinweise & Doku ===== | ||
| - | - Tests/ | + | * Tests/ |
| - | - JavaScript-API Referenz (z. B. bru.setEnvVar): | + | |
| - | + | ||
| - | ---- | + | |
| - | {{tag> | + | |
| - | [[https:// | + | |
| - | + | ||
| - | ===== Hinweise & Doku ===== | + | |
| - | - Tests/ | + | |
| - | - Vollständige JavaScript-API (u. a. `bru.setEnvVar`, | + | |
| ---- | ---- | ||