Topik ini menyediakan contoh kode untuk meminta halaman web dan mengembalikan kontennya ke klien.
Contoh kode
/**
* Contoh kode ini menunjukkan cara meminta halaman web https://www.aliyundoc.com/index.html dan mengembalikan konten halaman ke klien.
* Ganti someHost dan url dengan alamat host dan URL Anda selama pengujian.
*/
const someHost = "https://www.aliyundoc.com/"
const url = someHost + "index.html"
/**
* Gunakan gatherResponse untuk mendapatkan badan respons dan mengembalikannya ke klien sebagai string.
* Gunakan await gatherResponse(..) dalam fungsi asinkron untuk memastikan bahwa badan respons diperoleh.
*/
async function gatherResponse(response) {
const headers = response.headers
const contentType = headers.get("content-type") || ""
if (contentType.includes("application/json")) {
return JSON.stringify(await response.json())
} else if (contentType.includes("application/text")) {
return response.text()
} else if (contentType.includes("text/html;charset=UTF-8")) {
return response.text()
} else {
return response.blob()
}
}
async function handleRequest(request) {
const init = {
headers: {
"content-type": "text/html;charset=UTF-8",
},
}
const response = await fetch(url, init)
const results = await gatherResponse(response)
return new Response(results, init)
}
addEventListener("fetch", event => {
return event.respondWith(handleRequest(event.request))
})Hasil
Permintaan untuk mengambil konten dari halaman https://www.aliyundoc.com/index.html dikirim melalui Rutin Tepi, dan kontennya berhasil dikembalikan ke klien.