1
0

Update README.md

This commit is contained in:
Toby
2022-11-24 19:27:10 +01:00
committed by GitHub
parent aeb4eb06e4
commit ba371dcc6d

View File

@@ -32,14 +32,14 @@ I worked a lot with [Express.js](https://expressjs.com/) in the past and really
import { Router } from '@tsndr/cloudflare-worker-router' import { Router } from '@tsndr/cloudflare-worker-router'
export interface Env { export interface Env {
// Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/ // Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/
// MY_KV_NAMESPACE: KVNamespace; // MY_KV_NAMESPACE: KVNamespace;
// //
// Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/ // Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/
// MY_DURABLE_OBJECT: DurableObjectNamespace; // MY_DURABLE_OBJECT: DurableObjectNamespace;
// //
// Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/ // Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/
// MY_BUCKET: R2Bucket; // MY_BUCKET: R2Bucket;
} }
@@ -51,59 +51,59 @@ router.cors()
// Register global middleware // Register global middleware
router.use(({ req, res, next }) => { router.use(({ req, res, next }) => {
res.headers.set('X-Global-Middlewares', 'true') res.headers.set('X-Global-Middlewares', 'true')
next() next()
}) })
// Simple get // Simple get
router.get('/user', ({ req, res }) => { router.get('/user', ({ req, res }) => {
res.body = { res.body = {
data: { data: {
id: 1, id: 1,
name: 'John Doe' name: 'John Doe'
}
} }
}
}) })
// Post route with url parameter // Post route with url parameter
router.post('/user/:id', ({ req, res }) => { router.post('/user/:id', ({ req, res }) => {
const userId = req.params.id const userId = req.params.id
// Do stuff... // Do stuff...
if (errorDoingStuff) { if (errorDoingStuff) {
res.status = 400 res.status = 400
res.body = { res.body = {
error: 'User did stupid stuff!' error: 'User did stupid stuff!'
}
return
} }
return
}
res.status = 204 res.status = 204
}) })
// Delete route using a middleware // Delete route using a middleware
router.delete('/user/:id', ({ req, res, next }) => { router.delete('/user/:id', ({ req, res, next }) => {
if (!apiTokenIsCorrect) { if (!apiTokenIsCorrect) {
res.status = 401 res.status = 401
return return
} }
await next() await next()
}, (req, res) => { }, (req, res) => {
const userId = req.params.id const userId = req.params.id
// Do stuff... // Do stuff...
}) })
// Listen Cloudflare Workers Fetch Event // Listen Cloudflare Workers Fetch Event
export default { export default {
async fetch(request, env) { async fetch(request: Request, env: Env): Promise<Response> {
return router.handle(env, request) return router.handle(env, request)
} }
} }
``` ```