kvanC - 2. Teil LuthigerFS19
Fragen zum 2. Teil kvanC an der FHNW
Fragen zum 2. Teil kvanC an der FHNW
-
- 1 / 77
-
Lernkarten
Was bedeutet Stateful?
Was kann zum Beispiel Stateful sein?
Eine HTTP Verbindung kann zum Beispiel NICHT stateful sein.
- wird vom Session-Management unterstützt
- Session ID wird an Client übertragen (z.B. in einem Cookie gespeichert)
Was bedeutet "stateless" und was kann in unserem Fall stateless sein?
Eine HTTP Verbidung kann stateless sein
- jeder Befehl wird unabhängig ausgeführt
- Keine Kenntnis auf vorher ausgeführte Anforderungen
- Server hat keine Kenntnis auf vorangegangenen Anfragen desselben Clients
Was bedeutet URI ?
Uniform Resource Identifier
Was sind Eigenschaften der URI?
Default Protokoll: HTTP (oder HTTPS)
Default Port: 80
Welche HTTP Methoden gibt es?
- GET
- POST
- PUT
- DELETE
Was macht die HTTP GET Methode?
Was sind die EIgenschaften von GET?
Lesen (Read) einer Ressource
Ist idempotent und safe
URL sollte auf 255 Bytes begrenzt werden
Was bedeutet "idempotent" im Falle einer HTTP GET Methode?
Eine Requestmethod wird als "idempotent" betrachtet, wenn die beabsichtigte Auswirkung mehrerer identischer Anforderungen mit dieser Methode auf den Server dieselbe ist wie die Auswirkung für eine einzelne solche Anforderung.
Was bedeutet idempotent im allgemeinen?
Mehrfahches Ausführen einer Methode mit immer dem selben Resultat.
Was bedeuted "safe" im Zusammenhang mit der HTTP GET Methode?
Eine HTTP-Methode ist "safe", wenn sie den Status des Servers nicht ändert.
Was macht die HTTP "POST" Methode?
Was ist eine spezielle Eigenschaft?
Erzeugen (Create) einer neuen Ressource
Daten befinden sich nicht in der URL, sondern werden als Payload dem Request angehängt
Was macht die HTTP "PUT" Methode?
Was ist ihre Eigenschaften?
Ändern (Update) einer vorhanden Ressource
Ist idempotent
Daten befinden sich nicht in der URL, sondern werden als Payload dem Request angehängt
Welche der HTTP Request Methoden ist NICHT idempotent?
Die POST Methode
Was macht die HTTP "DELETE" Methode?
Was ist deren Eigenschaft?
Löschen (Remove) einer existierenden Ressource
Ist idempotent
Für was sind HTTP Status Codes gut?
Status Codes sind wichtig und zeigen dem Client, wie er die Server-Response interpretieren soll.
Welche Statuscodes gibt es?
1xx: Informational Messages
2xx: Successful
3xx: Redirection
4xx: Client Error
5xx: Server Error
Nenne mindestens eine Statuscode in der Kategorie "Successful"
200 OK
Nenne mindestens eine Statuscode in der Kategorie "Redirection"
- 303 See Other (Post/Redirect/Get Design Pattern)
- 304 Not Modified
Nenne mindestens eine Statuscode in der Kategorie "Client Error"
404 Not Found
Nenne mindestens eine Statuscode in der Kategorie "Server Error"
500 Internal Server Error
Mit was antwortet der Server?
mit einer Response und mit einem Status Code
Was ist alles für einen Request nötig?
Uri + Verb
Was ist die Same-Origin Policy?
- Ist ein Sicherheitskonzept
- Untersagt div Skriptsprachen auf Objekte zuzugreifen welche von einer anderen Webseite stammen
- Speicherort muss dem Origin entsprechen
Wir haben folgende Start URL: http://www.example.com/dir/page.html
Merke sie dir gut für die Multiple Choice antwort.
Auf welche der folgenden URL darf zugegriffen werden und warum?
Was heisst CORS ausgeschrieben?
Cross-Origin Resource Sharing
Was ist ein Cross Origin Request?
Ein Zugriff einer Webseite oder Webanwendung auf Ressourcen eines anderen Servers bzw. einer anderen Domain.
Weshalb verwendet man CORS?
- Webbrowsern oder WebClients einen Cross Origin Request ermöglichen
Weshalb benutzt man CORS obwohl es durch die Same Origin Policy untersagt wird?
CORS ist ein Kompromiss zugunsten grösserer Flexibilität im Internet unter Berücksichtigung möglichst hoher Sicherheitsmassnahmen.
Was ist der CORS Preflight Request?
Der Preflight fragt die CORS-Regeln für den Serverdienst ab bevor die tatsächliche Anforderung gesendet wird.
Was ist eine Deserialisierung?
Umwandlung eines Bytestroms, der durch Serialisierung eines Objekts gewonnen wurde, zurück in ein Objekt
Was ist AJAX?
AJAX bezeichnet ein Konzept der asynchronen Datenübertragung zwischen einem Browser und dem Server. Dieses ermöglicht es, HTTP-Anfragen durchzuführen, während eine HTML-Seite angezeigt wird, und die Seite zu verändern, ohne sie komplett neu zu laden.
Wo gehört der AJAX call im component Lifecycle?
In der ComponentDidMount Methode.
Das wird so gehandhabt um setState zu verwenden, damit kann man das Component updaten sobald neue Daten vorhanden sind.
Was ist eine SPA?
Eine Single Page Application ist eine Webanwendung, die keinen Seitenwechsel (Roundtrip) durchführt, sondern die Anzeige nur durch Austausch von Seitenelementen via JavaScript/DOM verändert. Es gibt dabei also keine serverseitige Seitennavigation.
Initial wird eine komplette Seite oder zumindest das Grundgerüst einer Webseite vom dem Server geladen. Die Seite lädt anschliessend Daten über Webservices (meist RESTbasierte Dienste) nach und erzeugt die Darstellung clientseitig (clientseitiges Rendern).
Eine SPA wirkt damit wie eine Desktopanwendung.
Was ist ein RESTful Webservice?
Model zur Bestimmung der Reife eines Services im Bezug auf seine „RESTfulness“ -> Richardson Maturity Model (RMM)
Welche Stufen gibt es alle bei einem RESTful Webservice?
Stufe 0 - RESTless
Stufe 1 - Ressourcen
Stufe 2 - HTTP Verben
Stufe 3 - Hypermedia
Was bedeutet die Stufe 0 des Restful Webservices?
RESTless, das bedeutet: kein REST Support
Was bedeutet die Stufe 1 des RESTful Webservices?
Ressourcen: Jede identifizierbare Ressource hat eine eigene URI.
Was bedeutet die Stufe 2 des RESTful Webservices?
HTTP-Verben:
GET, POST, HEAD, PUT, DELETE und OPTIONS werden gemäss ihrer Spezifikation unterstützt.
Was bedeutet die Stufe 3 des RESTful Webservices?
Hypermedia: Verknüpfung von Ressourcen und Repräsentationen durch Hyperlinks
Erkläre wie die Synchrone Kommunikation abläuft
Der Client wartet nach Absenden der Anfrage an den Server so lange, bis er eine Rückantwort erhält, und kann dann erst andere Aktivitäten ausführen.
Erkläre wie die asynchrone Kommunikation abläuft.
Der Client sendet die Anfrage an den Server und arbeitet sofort weiter. Beim Eintreffen der Rückantwort werden dann bestimmte Routinen beim Client aufgerufen.
Die durch den Server initiierten Rückrufe (Callbacks) erfordern zusätzliche Kontrolle beim Client, wenn unerwünschte Unterbrechungen der Arbeit vermieden werden sollen.