Pengkomputeran Pinggir dengan Cloudflare Workers & Deno · Pelajaran

Mereka Bentuk API RESTful

Rancang dan susun titik akhir API RESTful, kaedah dan model data yang sesuai untuk penggunaan di pinggir rangkaian.

Pelajaran 1 daripada 311 langkah

Mereka Bentuk API RESTful ialah pelajaran Pengkomputeran Pinggir dengan Cloudflare Workers & Deno percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. 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 3 pelajaran.

Pengenalan kepada API RESTful

Selamat datang! Dalam pelajaran ini, anda akan mempelajari tentang API RESTful, iaitu cara asas untuk mereka bentuk perkhidmatan web. REST ialah singkatan bagi Representational State Transfer.

Anggap API seperti menu di restoran. Anda membuat permintaan (memesan makanan), lalu dapur (pelayan) menghantar respons (hidangan anda). REST mentakrifkan satu set peraturan tentang cara komunikasi ini perlu berlaku melalui internet.

Prinsip Teras REST

API RESTful dibina berasaskan beberapa idea teras:

  • Sumber: Segala-galanya ialah 'sumber' (contohnya, pengguna atau produk).
  • URI Unik: Setiap sumber mempunyai alamat unik (URL atau URI).
  • Kaedah Piawai: Kaedah HTTP (GET, POST, PUT, DELETE) digunakan untuk melaksanakan tindakan terhadap sumber.
  • Tanpa Keadaan: Setiap permintaan daripada klien kepada pelayan mesti mengandungi semua maklumat yang diperlukan untuk memahami permintaan tersebut. Pelayan tidak menyimpan keadaan 'sesi' klien antara permintaan.

Sumber Ialah Kata Nama

Semasa mereka bentuk API, fikirkan tentang 'perkara' yang diuruskan oleh aplikasi anda. 'Perkara' ini ialah sumber anda.

Contohnya, jika anda membina API e-dagang, sumber anda mungkin termasuk:

  • /products
  • /users
  • /orders
  • /categories

Perhatikan bahawa semuanya ialah kata nama jamak. Ini ialah amalan umum dan disyorkan dalam reka bentuk RESTful.

Kaedah HTTP: Kata Kerja

Kaedah HTTP memberitahu pelayan jenis tindakan yang ingin anda lakukan terhadap sesuatu sumber. Kaedah ini seperti kata kerja dalam ayat:

  • GET: Mendapatkan data (contohnya, mendapatkan produk atau senarai pengguna).
  • POST: Mencipta data baharu (contohnya, mencipta pengguna baharu atau menambah produk baharu).
  • PUT: Mengemas kini data sedia ada (menggantikan keseluruhan sumber).
  • PATCH: Mengemas kini sebahagian data sedia ada (mengemas kini medan tertentu bagi sesuatu sumber).
  • DELETE: Membuang data (contohnya, memadam produk).

GET: Contoh Mendapatkan Data

Kaedah GET digunakan untuk meminta data daripada sumber yang ditentukan. Kaedah ini tidak sepatutnya mempunyai kesan sampingan (iaitu, tidak sepatutnya mengubah data pada pelayan).

Cuba jalankan pelayan Deno ringkas ini. Kemudian buka pelayar anda ke http://localhost:8000/products untuk melihat output.

import { serve } from "https://deno.land/std/http/server.ts";

serve(async (req) => {
  const url = new URL(req.url);

  if (req.method === "GET" && url.pathname === "/products") {
    const products = [
      { id: 1, name: "Wireless Mouse", price: 25.99 },
      { id: 2, name: "Mechanical Keyboard", price: 79.99 }
    ];
    return new Response(JSON.stringify(products), {
      headers: { "Content-Type": "application/json" }
    });
  }

  return new Response("Not Found", { status: 404 });
}, { port: 8000 });

console.log("Server running on http://localhost:8000");

POST: Contoh Mencipta Data

Kaedah POST digunakan untuk menghantar entiti kepada sumber yang ditentukan, yang sering menyebabkan perubahan keadaan atau penciptaan sumber baharu.

Contoh ini menunjukkan cara pelayan Deno mengendalikan permintaan POST untuk mencipta produk baharu. Biasanya, anda akan menghantar data JSON dalam isi permintaan.

import { serve } from "https://deno.land/std/http/server.ts";

serve(async (req) => {
  const url = new URL(req.url);

  if (req.method === "POST" && url.pathname === "/products") {
    try {
      const newProduct = await req.json();
      // In a real application, you'd save newProduct to a database.
      // For this example, we'll just log it and return a mock ID.
      console.log("Received new product:", newProduct);
      return new Response(JSON.stringify({ ...newProduct, id: 3 }), {
        status: 201, // 201 Created
        headers: { "Content-Type": "application/json" }
      });
    } catch (e) {
      return new Response("Invalid JSON payload", { status: 400 });
    }
  }

  return new Response("Method Not Allowed", { status: 405 });
}, { port: 8000 });

console.log("Server running on http://localhost:8000");

Mereka Bentuk Laluan Titik Akhir

Laluan titik akhir (URI) yang jelas dan konsisten amat penting untuk API yang baik. Berikut ialah beberapa amalan terbaik:

  • Gunakan kata nama jamak: /users, bukannya /user.
  • Elakkan kata kerja dalam laluan: /products adalah baik, manakala /getProducts tidak. Kaedah HTTP sudah menyatakan tindakan tersebut.
  • Gunakan penyusunan bertingkat untuk perhubungan: Bagi sumber yang berkaitan, gunakan penyusunan bertingkat. Contohnya, /users/{id}/orders untuk mendapatkan pesanan bagi pengguna tertentu.
  • Gunakan parameter laluan untuk sumber tertentu: /products/{id} untuk merujuk kepada satu produk.

Model Data & Muatan

Data yang anda hantar kepada dan terima daripada API anda dipanggil muatan. Dalam API RESTful moden, JSON (JavaScript Object Notation) ialah format piawai.

Model data mentakrifkan struktur JSON ini. Sebagai contoh, model data 'product' mungkin kelihatan seperti ini:

{
  "id": 123,
  "name": "Example Product",
  "description": "A great item.",
  "price": 19.99
}

Kekonsistenan dalam model data anda menjadikan API lebih mudah dijangka dan digunakan.

API RESTful di Pinggir

Reka bentuk API RESTful amat sesuai untuk persekitaran pengkomputeran pinggir seperti Cloudflare Workers:

  • Tanpa keadaan: Fungsi pinggir biasanya berjangka hayat pendek dan tidak mengekalkan keadaan, selaras sepenuhnya dengan prinsip REST tanpa keadaan.
  • Cache: Permintaan GET mudah disimpan dalam cache oleh CDN, yang merupakan manfaat utama pengkomputeran pinggir untuk mengurangkan kependaman.
  • Sifat teragih: Pemisahan tanggungjawab yang jelas dan antara muka seragam REST memudahkan pengagihan logik merentasi banyak lokasi pinggir.

Semakan Reka Bentuk API

Anda sedang membina API untuk blog. Anda perlu mendapatkan senarai semua catatan blog. Antara reka bentuk titik akhir API dan kaedah HTTP berikut, yang manakah paling mematuhi RESTful?

Imbas Kembali: Reka Bentuk API RESTful

Syabas! Anda telah mempelajari asas reka bentuk API RESTful:

  • API menggunakan sumber (kata nama) dan kaedah HTTP (kata kerja) untuk berkomunikasi.
  • Kaedah yang biasa digunakan ialah GET (mendapatkan), POST (mencipta), PUT/PATCH (mengemas kini) dan DELETE (mengalih keluar).
  • Laluan titik akhir hendaklah jelas, dengan menggunakan kata nama jamak dan mengelakkan kata kerja.
  • JSON ialah format piawai untuk muatan data.
  • Prinsip REST menjadikannya pilihan yang sangat baik untuk pengkomputeran pinggir kerana sifatnya yang tanpa keadaan dan kebolehcachean.

Seterusnya, kita akan mendalami pengesahan input dan keselamatan untuk API pinggir anda!

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 “Mereka Bentuk API RESTful” percuma?

Ya — teks penuh “Mereka Bentuk API RESTful” 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 3 pelajaran.

Apakah yang akan saya pelajari dalam “Mereka Bentuk API RESTful”?

Rancang dan susun titik akhir API RESTful, kaedah dan model data yang sesuai untuk penggunaan di pinggir rangkaian. 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 1 daripada 3.

Berapa lamakah pelajaran “Mereka Bentuk API RESTful” 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. Mereka Bentuk API RESTful
  2. Penghalaan & Perisian Tengah
  3. Pengesahan dan Pengendalian Ralat
← Kembali ke Pengkomputeran Pinggir dengan Cloudflare Workers & Deno