Pengkomputeran Pinggir dengan Cloudflare Workers & Deno · Pelajaran

Mengendalikan Permintaan HTTP

Tulis Worker asas untuk memintas dan memberi respons kepada permintaan HTTP sambil menunjukkan fungsi teras.

Pelajaran 2 daripada 411 langkah

Mengendalikan Permintaan HTTP ialah pelajaran Pengkomputeran Pinggir dengan Cloudflare Workers & Deno percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pengkomputeran Pinggir dengan Cloudflare Workers & Deno, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pengkomputeran Pinggir dengan Cloudflare Workers & Deno merangkumi sejumlah 4 pelajaran.

Workers dan Permintaan Web

Cloudflare Workers ialah alat berkuasa yang berada di pinggir internet. Anggaplah ia sebagai pengawal pintu yang sangat cekap untuk trafik web anda.

Tugas utamanya adalah memintas permintaan HTTP masuk, memprosesnya menggunakan kod anda dan kemudian menghantar respons HTTP yang sesuai.

Memahami Permintaan

Setiap kali pelayar pengguna berinteraksi dengan Worker anda, pelayar itu menerima objek Request. Objek ini mengandungi semua butiran tentang permintaan masuk:

  • URL: Alamat web penuh yang cuba dicapai oleh pengguna.
  • Kaedah: Tindakan HTTP, seperti GET (mendapatkan data) atau POST (menghantar data).
  • Pengepala: Maklumat tambahan seperti jenis pelayar, kuki dan bahasa pilihan.
  • Badan: Sebarang data yang dihantar bersama permintaan, biasanya dengan kaedah POST atau PUT.

Menangkap Peristiwa Fetch

Cloudflare Workers menggunakan pendengar peristiwa untuk 'menangkap' permintaan masuk. Peristiwa fetch dicetuskan bagi setiap permintaan HTTP yang sampai ke Worker anda.

Titik masuk standard bagi Worker ialah objek yang dieksport dengan kaedah async fetch. Kaedah ini menerima objek request sebagai argumen pertamanya.

export default {
  async fetch(request, env, ctx) {
    // Your Worker logic goes here
    // The 'request' object holds all incoming request details
    return new Response("Hello from Worker!");
  }
}

Membina Respons Mudah

Selepas Worker anda memproses permintaan, ia perlu menghantar kembali objek Response. Objek ini mengandungi kandungan dan metadata yang akan diterima oleh pelayar pengguna.

Response asas boleh dicipta dengan hanya menghantar rentetan teks kepada pembinanya.

export default {
  async fetch(request, env, ctx) {
    const responseText = "Welcome to the edge!";
    return new Response(responseText);
  }
}

'Hello Worker!' Pertama Anda

Mari gabungkan perkara yang telah kita pelajari untuk mencipta Worker mudah yang memaparkan "Hello Cloudflare Worker!" bagi setiap permintaan masuk.

Inilah struktur asas yang akan anda gunakan untuk hampir semua Cloudflare Workers.

export default {
  async fetch(request, env, ctx) {
    return new Response("Hello Cloudflare Worker!");
  }
}

Melihat URL Permintaan

Anda boleh mengakses pelbagai sifat objek request untuk mendapatkan maklumat tentang permintaan masuk. Contohnya, request.url memberikan URL penuh yang diminta.

Ini membolehkan anda mencipta respons dinamik berdasarkan laluan tertentu atau parameter pertanyaan yang cuba dicapai oleh pengguna.

export default {
  async fetch(request, env, ctx) {
    const url = request.url;
    return new Response(`You requested: ${url}`);
  }
}

Memberikan Respons kepada GET berbanding POST

Sifat request.method memberitahu anda kaedah HTTP yang digunakan (contohnya, GET, POST, PUT, DELETE). Anda boleh menggunakannya untuk menyediakan logik yang berbeza bagi jenis permintaan yang berbeza.

Contohnya, permintaan GET mungkin mendapatkan data, manakala permintaan POST mungkin menghantar data untuk penciptaan.

export default {
  async fetch(request, env, ctx) {
    if (request.method === "GET") {
      return new Response("This is a GET request.");
    } else if (request.method === "POST") {
      return new Response("This is a POST request.", { status: 201 });
    }
    return new Response("Method not allowed.", { status: 405 });
  }
}

Pengepala dan Status Tersuai

Anda boleh menyesuaikan objek Response dengan lebih lanjut dengan menambahkan pengepala HTTP atau mengubah kod status. Hal ini dilakukan dengan menghantar objek pilihan sebagai argumen kedua kepada pembina Response.

  • Pengepala: Menyediakan metadata tentang respons (contohnya, Content-Type: text/plain).
  • Kod Status: Menunjukkan hasil permintaan (contohnya, 200 OK, 404 Not Found).
export default {
  async fetch(request, env, ctx) {
    return new Response("Custom response!", {
      status: 200,
      headers: {
        "Content-Type": "text/plain",
        "X-Worker-Info": "Processed at the Edge"
      }
    });
  }
}

Mendapatkan Data daripada Asal

Sering kali, Worker anda akan bertindak sebagai proksi. Ini bermakna Worker mendapatkan content daripada 'pelayan asal' (tapak web sebenar atau bahagian belakang api anda), kemudian berkemungkinan mengubah suainya sebelum menghantarnya kepada pengguna.

Anda boleh menggunakan fungsi global fetch() dengan menghantar objek request asal kepadanya untuk memajukan permintaan kepada pelayan lain.

export default {
  async fetch(request, env, ctx) {
    // Fetch the request from the origin server
    const response = await fetch(request);
    // You can modify the response here before returning it
    return response;
  }
}

Semakan Respons Worker

Anda sedang membina Cloudflare Worker. Antara berikut, yang manakah menetapkan kod status sesuatu respons kepada 404 Not Found dengan betul?

Imbas Kembali: Mengendalikan Permintaan HTTP

Dalam pelajaran ini, anda telah mempelajari asas Cloudflare Workers: cara ia mengendalikan permintaan HTTP dan menghantar respons kembali.

  • Workers memintas peristiwa fetch.
  • Objek Request mengandungi semua data permintaan masuk.
  • Anda mengembalikan objek Response kepada pengguna.
  • Anda boleh mengakses butiran permintaan seperti URL dan kaedah.
  • Respons boleh mempunyai kod status dan pengepala tersuai.
  • Workers boleh bertindak sebagai proksi dengan mendapatkan content daripada pelayan asal.

Seterusnya, anda akan mempelajari langkah-langkah untuk menggunakan Worker pertama anda pada rangkaian edge Cloudflare supaya ia boleh mula menyediakan perkhidmatan kepada pengguna di seluruh dunia!

Percuma untuk bermula

Pelajari Pengkomputeran Pinggir dengan Cloudflare Workers & Deno dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
12
Pelajaran
47

Soalan Lazim

Adakah pelajaran “Mengendalikan Permintaan HTTP” percuma?

Ya — teks penuh “Mengendalikan Permintaan HTTP” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Pengkomputeran Pinggir dengan Cloudflare Workers & Deno, tingkat taraf kepada CoddyKit PRO. Kursus Pengkomputeran Pinggir dengan Cloudflare Workers & Deno merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Mengendalikan Permintaan HTTP”?

Tulis Worker asas untuk memintas dan memberi respons kepada permintaan HTTP sambil menunjukkan fungsi teras. Anda berlatih Pengkomputeran Pinggir dengan Cloudflare Workers & Deno menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Pengkomputeran Pinggir dengan Cloudflare Workers & Deno?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Pengkomputeran Pinggir dengan Cloudflare Workers & Deno di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Mengendalikan Permintaan HTTP” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pengkomputeran Pinggir dengan Cloudflare Workers & Deno ini?

Ya. Setiap pelajaran Pengkomputeran Pinggir dengan Cloudflare Workers & Deno menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Menyediakan Persekitaran Worker
  2. Mengendalikan Permintaan HTTP
  3. Menggunakan Worker Pertama Anda
  4. Pemboleh Ubah Persekitaran dan Rahsia dalam Workers
← Kembali ke Pengkomputeran Pinggir dengan Cloudflare Workers & Deno