AJAX
AJAX
Asynchronous JavaScript And XML
sebuah teknologi yang di tambahkan ke JavaScript
AJAX
- Make requests to the server without reloading the page
- Request data from a server - after the page has loaded
- Receive data from a server - after the page has loaded
- Send data to a server - in the background
AJAX APIs
- XMLHttpRequest
- Fetch
JSON
HTTP Verbs
- GET
- POST
- PUT
- DELETE
- PATCH
apa yang terjadi saat pertama kali buka menjalankan alamat url pada browser?
Promise
Object yang merupakan penyelesaian akhir, bisa sukses dan bisa gagal dari proses Asyncronous.
Analogi
-
Ayah Budi menyuruh Budi untuk membeli makanan A
-
kemudian Budi menjawab "baik Ayah!"
-
Namun sebelumnya Ayah Budi berkata: Budi ketika kamu membeli makanan aku akan menyiapkan piring dan sendok. Dan pastikan kamu membeli makanan A itu.
-
Budi menjawab: Apabila ada hal tak terduga?
-
Ayah Budi: Jika kau mendapatkannya kirim aku sebuah pesan WA, jika makanan tersebut tidak ada / kamu tidak mendapatkannya maka telpon aku segera.
Promise Contructor
new Promise( /* executor */ function(resolve, reject) { ... } );Promise Contructor
var adamakananA = "mcD paket panas"
var promise1 = new Promise(function(resolve, reject) {
// butuh waktu untuk beli makanan A
setTimeout(function() {
if (adamakananA) {
resolve('Ayah, Aku sudah membeli makanannya!');
} else {
reject('Riing, Ayah uangnya jatuh di jalan!');
}
}, 300);
});
promise1.then(function success(value) {
console.log(value);
}, function failed(error) {
console.log(error);
});
console.log(promise1);promise.then(onFulfilled, onRejected);Then
optional callback function yang hanya menerima/ terpanggil bila hasil sukses
optional callback function yang hanya menerima/ terpanggil bila hasil gagal
Promise state
- Pertama kali di buat / diinisialisasi, statusnya adalah pending.
- ketika menerima status sukses(fulfilled) maka di thenable melalui `then` pada function(parameter pertama) terpanggil.
- ketika menerima status gagal(failed) maka di thenable melalui `then` pada function(parameter kedua) terpanggil.
thenable and chaining
catch
catch(allRejected);Optional callback function yang terpanggil apabila ada exception / error
fetch API
Using Others:
- Axios
Syntax Sugar
Async...await
AJAX
By ikhsanalatsary
AJAX
- 61