diff --git a/index.d.ts b/index.d.ts index 0b2a94e..6c4b890 100644 --- a/index.d.ts +++ b/index.d.ts @@ -45,6 +45,7 @@ declare class Router { * @property {Object} query Object containing all query parameters * @property {Object} headers Object containing request headers * @property {Object|string} body Only available if method is `POST`, `PUT` or `PATCH`. Contains either the received body string or a parsed object if valid JSON was sent. + * @property {Object} cf object containing custom Cloudflare properties. (https://developers.cloudflare.com/workers/examples/accessing-the-cloudflare-object) */ /** * Response Object diff --git a/index.js b/index.js index 684d4b9..bcd388a 100644 --- a/index.js +++ b/index.js @@ -51,6 +51,7 @@ class Router { * @property {Object} query Object containing all query parameters * @property {Object} headers Object containing request headers * @property {Object|string} body Only available if method is `POST`, `PUT`, `PATCH` or `DELETE`. Contains either the received body string or a parsed object if valid JSON was sent. + * @property {Object} cf object containing custom Cloudflare properties. (https://developers.cloudflare.com/workers/examples/accessing-the-cloudflare-object) */ /** @@ -300,7 +301,7 @@ class Router { request = request.request console.warn("Warning: Using `event` on `router.handle()` is deprecated and might go away in future versions, please use `event.request` instead.") } - const req = { headers: request.headers, method: request.method, url: request.url } + const req = { headers: request.headers, method: request.method, url: request.url, cf: request.cf || {} } req.params = [] if (req.method === 'OPTIONS' && Object.keys(this.corsConfig).length) { return new Response(null, {