Merge branch 'main' into patch-1
This commit is contained in:
11
index.js
11
index.js
@@ -50,7 +50,8 @@ class Router {
|
||||
* @property {Object<string, string>} params Object containing all parameters defined in the url string
|
||||
* @property {Object<string, string>} query Object containing all query parameters
|
||||
* @property {Object<string, string>} headers Object containing request headers
|
||||
* @property {Object<string, string>|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<string, string> | 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<string, string | number>} cf object containing custom Cloudflare properties. (https://developers.cloudflare.com/workers/examples/accessing-the-cloudflare-object)
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -59,7 +60,7 @@ class Router {
|
||||
* @typedef RouterResponse
|
||||
* @property {Object<string, string>} headers Object you can set response headers in
|
||||
* @property {number} status Return status code (default: `204`)
|
||||
* @property {Object<string, string>|string} body Either an `object` (will be converted to JSON) or a string
|
||||
* @property {Object<string, string> | string} body Either an `object` (will be converted to JSON) or a string
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -262,7 +263,7 @@ class Router {
|
||||
*
|
||||
* @private
|
||||
* @param {Request} request
|
||||
* @returns {Route|undefined}
|
||||
* @returns {Route | undefined}
|
||||
*/
|
||||
getRoute(request) {
|
||||
const url = new URL(request.url)
|
||||
@@ -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, {
|
||||
@@ -313,7 +314,7 @@ class Router {
|
||||
status: this.corsConfig.optionsSuccessStatus
|
||||
})
|
||||
}
|
||||
if (['POST', 'PUT', 'PATCH'].includes(req.method)) {
|
||||
if (['POST', 'PUT', 'PATCH', 'DELETE'].includes(req.method)) {
|
||||
if (req.headers.has('Content-Type') && req.headers.get('Content-Type').includes('json')) {
|
||||
try {
|
||||
req.body = await request.json()
|
||||
|
||||
Reference in New Issue
Block a user