[S8L3] Async, Ajax, Axios Flashcards

1
Q

Was ist Asynchronous Code?

A
  • Es erlaubt es JavaScript zwei Dinge auf einmal zu tun, bzgl. diese Asyncron zu erledigen
  • Damit kann der Browser Dinge weiterhin ausführen während gerade etwas anderes passiert, wie z.B. ein API Call
  • Dabei wird ein Helfer Object Namens Promise erstellt, welches dem Browser sofort Bescheid sagt wenn die Async Aufgabe erledigt ist
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist ein Promise?

A
  • Ein Object mit einigen Eigenschaften
  • Wird bei dem Invoken einer Async Function erstellt
  • Informiert die JavaScript Engine darüber wenn ein Async Function fertig ist
  • Promises werden mit dem new Keyword instanziert und erhalten eine Callback Function, welche eine resolve und reject Function besitzt
  • Besitzen 3 enum values “pending”, “resolved”, “rejected”
  • Bei erfolgreich wird resolve() gecalled, ansonsten reject()
  • Wenn ein Promise resolved oder rejected ist, nutzt man die Promise Methoden .then() oder .catch() um der JavaScript Engine zu sagen was danach kommt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was sind die .then und .catch Methoden?

A
  • Sind Methoden des Promise Objects, welche eine Callback Function als Argument erhalten
  • Wenn die Async Function fertig ist wird der Callback ausgeführt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wie sieht eine Async Function aus?

A
const asyncFunction = () => {
 return new Promise((resolve, reject) => {
 // perform some async action
if (asyncFinishedSuccessfully) {
resolve(dataObject);
} else {
reject(errorMessage);
}
});
};

asyncFunction()
.then((dataPassedFromResolve) => {
console. .log(“async stuff finished”, dataPassedFromResolve);
})
.catch((errorPassedFromResolve) => {
console .log(“async stuff rejected”, errorPassedFromResolve);
});

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wann braucht man keinen neuen Promise zu erstellen?

A

-Oft bei API Calls, da unter der Haube dies für uns gemacht wird

axios.get("url")
 .then(response => {
console.log("response");
})
 .catch(err => {
 console.log("response");M
});
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was ist Ajax?

A
  • Ein Konzept um Daten mit einem Server auszutauschen und Teile einer Website zu laden ohne die Website neuzuladen
  • Man möchte Api Calls machen und Teile der Seite mit neuen Daten füttern ohne die Webseite neuzuladen
  • Kann mit Axios und Browser Fetch erreicht werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Wie sieht ein AJAX call aus?

A
componentDidMount() {
console.log('inside CDM');
fetch("URL")
 .then(res => res.json())
 .then(dogs => console.log(dogs))
 .catch(err => console.log(err));
 console,log('below fetch');
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was ist HTTP?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Welche HTTP Methoden gibt es?

A
  • POST (New Resource in DB) CREATE
  • GET )Read Data from DB) READ
  • PUT (Update Data in the DB) UPDATE
  • DELETE (Delete Data from the DB) DELETE
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wofür steht CRUD?

A

Create
Read
Update
Delete

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was sind HTTP Response Codes?

A

Successfull Responses (2xx)

  • 200 OK
  • 201 Created
  • 202 Accepted

Client Errors (4xx)
400 Bad Request
403 Forbidden

Server Error Responses (5xx)
500 Internal Server Error

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was ist Axios?

A

-Eine Library um HTTP aus Web Applicaton zu Web Servern zu machen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wie benutzt man Axios?

A

npm install axios
yarn add axios

import axios from “axios”;

axios.get("URL")
.then(res => {
console.log(res);
})
.catch(err => {
console.log(err);
});

ODER

componentDidMount() {
axios
.get(‘https://dog.ceo/api/breed/husky/images’)
.then(res => console.log(res.data.message))
.catch(err => console.log(err));
}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wie kann man AJAX calls im Browser einsehen?

A
  • Im Network Tab des Inspections Tools des Browsers
  • Name auswählen
  • Response zum Angucken
  • Timing zum Zeitmessen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Ist async gleich Multithreading?

A
  • Nein, die JavaScript Engine macht trotzdem nur eine Sache

- Multithreading wird doch ServiceWorker erreicht

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Wie aktualisiert man den Network Tab des Inspections Tools von Chrome?

A

-STRG + R