Rumah > hujung hadapan web > tutorial js > Cara menggunakan Astro dengan Hono

Cara menggunakan Astro dengan Hono

Susan Sarandon
Lepaskan: 2025-01-17 08:31:10
asal
354 orang telah melayarinya

How to use Astro with Hono

Astro: Rangka kerja web yang berkuasa, kegemaran semasa saya. Fleksibiliti menjadikannya sesuai untuk pelbagai projek. Walau bagaimanapun, untuk pembangunan API, Hono terserlah.

Hono: Rangka kerja API mudah alih yang ringkas dengan sistem RPC yang mesra pengguna (menyerupai tRPC tetapi lebih pantas). Panduan ini menunjukkan cara menggabungkan kekuatan kedua-duanya.

Menyediakan Astro

Buat projek Astro baharu menggunakan:

npm create astro@latest
Salin selepas log masuk

Ikuti gesaan CLI. Mulakan projek dengan:

npm run dev
Salin selepas log masuk

Akses projek Astro anda di http://localhost:4321.

Menyediakan Hono

Pasang Hono:

npm install hono
Salin selepas log masuk

Buat laluan tangkap semua dalam src/pages/api/[...path].ts:

// src/pages/api/[...path].ts
import { Hono } from 'hono';

const app = new Hono().basePath('/api/');

app.get('/posts', async (c) => {
    return {
        posts: [
            { id: 1, title: 'Hello World' },
            { id: 2, title: 'Goodbye World' },
        ],
    };
});
Salin selepas log masuk

.basePath('/api/') adalah penting; ia menyelaraskan penghalaan Hono dengan struktur fail Astro. Laraskan laluan ini mengikut keperluan untuk memadankan lokasi titik akhir projek Astro anda (cth., /foo/bar/ untuk src/pages/foo/bar/[...path].ts).

Mengintegrasikan Hono dengan Astro

Buat eksport ALL untuk mengendalikan semua permintaan dan halakan mereka ke Hono:

// src/pages/api/[...path].ts
import { Hono } from 'hono';
import type { APIRoute } from 'astro';

// ... (Hono app setup from previous step) ...

export type App = typeof app; // Export Hono app type

export const ALL: APIRoute = (context) => app.fetch(context.request);
Salin selepas log masuk

Sekarang, http://localhost:4321/api/posts akan mengembalikan data palsu anda melalui Hono.

Menambah Klien RPC Ditaip

Untuk interaksi API selamat jenis, gunakan klien hc Hono:

// src/pages/some-astro-page.astro
import { hc } from 'hono/client';
import type { App } from './api/[...path].ts';

const client = hc<App>(window.location.href);

const response = await client.posts.$get();
const json = await response.json();

console.log(json); // { posts: [...] }
Salin selepas log masuk

Kesimpulan

Persediaan ini menggabungkan kuasa bahagian hadapan Astro dengan keupayaan bahagian belakang Hono yang cekap, memberikan pengalaman pembangunan yang diperkemas dengan keselamatan jenis. Terokai ciri meluas Hono untuk pembangunan API yang lebih maju.

Atas ialah kandungan terperinci Cara menggunakan Astro dengan Hono. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan