From d37f37ff92473b88f72deac7ea61c4748baef78f Mon Sep 17 00:00:00 2001 From: Jithin Shah Date: Tue, 16 Nov 2021 12:37:46 +0530 Subject: [PATCH] Add cf object to express req object --- index.d.ts | 1 + index.js | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) 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 3c10453..532a29c 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` 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) */ /** @@ -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, {