fix: resolve [DELETE/PUT]_PATHS_ALLOWED entries
This commit is contained in:
parent
680e7a105d
commit
c8d2e19f4a
2 changed files with 5 additions and 7 deletions
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "@andyburke/serverus",
|
"name": "@andyburke/serverus",
|
||||||
"description": "A flexible HTTP server for mixed content. Throw static files, markdown, Typescript and (hopefully, eventually) more into a directory and serverus can serve it up a bit more like old-school CGI.",
|
"description": "A flexible HTTP server for mixed content. Throw static files, markdown, Typescript and (hopefully, eventually) more into a directory and serverus can serve it up a bit more like old-school CGI.",
|
||||||
"version": "0.11.1",
|
"version": "0.11.2",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"exports": {
|
"exports": {
|
||||||
".": "./serverus.ts",
|
".": "./serverus.ts",
|
||||||
|
|
|
@ -82,7 +82,7 @@ export const HANDLERS: Partial<Record<HTTP_METHOD, HANDLER_METHOD>> = {
|
||||||
|
|
||||||
PUT: async (request: Request, normalized_path: string, server: SERVER): Promise<Response | undefined> => {
|
PUT: async (request: Request, normalized_path: string, server: SERVER): Promise<Response | undefined> => {
|
||||||
PUT_PATHS_ALLOWED = PUT_PATHS_ALLOWED ??
|
PUT_PATHS_ALLOWED = PUT_PATHS_ALLOWED ??
|
||||||
(Deno.env.get('SERVERUS_PUT_PATHS_ALLOWED') ?? '').split(';');
|
(Deno.env.get('SERVERUS_PUT_PATHS_ALLOWED') ?? '').split(';').map((p) => path.resolve(p));
|
||||||
|
|
||||||
const allowed = PUT_PATHS_ALLOWED.some((allowed_put_path: string) => normalized_path.startsWith(allowed_put_path));
|
const allowed = PUT_PATHS_ALLOWED.some((allowed_put_path: string) => normalized_path.startsWith(allowed_put_path));
|
||||||
|
|
||||||
|
@ -187,7 +187,7 @@ export const HANDLERS: Partial<Record<HTTP_METHOD, HANDLER_METHOD>> = {
|
||||||
|
|
||||||
DELETE: async (request: Request, normalized_path: string, server: SERVER): Promise<Response | undefined> => {
|
DELETE: async (request: Request, normalized_path: string, server: SERVER): Promise<Response | undefined> => {
|
||||||
DELETE_PATHS_ALLOWED = DELETE_PATHS_ALLOWED ??
|
DELETE_PATHS_ALLOWED = DELETE_PATHS_ALLOWED ??
|
||||||
(Deno.env.get('SERVERUS_DELETE_PATHS_ALLOWED') ?? '').split(';');
|
(Deno.env.get('SERVERUS_DELETE_PATHS_ALLOWED') ?? '').split(';').map((p) => path.resolve(p));
|
||||||
|
|
||||||
const allowed = DELETE_PATHS_ALLOWED.some((allowed_delete_path: string) => normalized_path.startsWith(allowed_delete_path));
|
const allowed = DELETE_PATHS_ALLOWED.some((allowed_delete_path: string) => normalized_path.startsWith(allowed_delete_path));
|
||||||
|
|
||||||
|
@ -249,16 +249,14 @@ export const HANDLERS: Partial<Record<HTTP_METHOD, HANDLER_METHOD>> = {
|
||||||
const allowed = ['GET', 'HEAD', 'OPTIONS'];
|
const allowed = ['GET', 'HEAD', 'OPTIONS'];
|
||||||
|
|
||||||
PUT_PATHS_ALLOWED = PUT_PATHS_ALLOWED ??
|
PUT_PATHS_ALLOWED = PUT_PATHS_ALLOWED ??
|
||||||
(Deno.env.get('SERVERUS_PUT_PATHS_ALLOWED') ?? '').split(';').map((put_path) => path.resolve(path.join(Deno.cwd(), put_path)));
|
(Deno.env.get('SERVERUS_PUT_PATHS_ALLOWED') ?? '').split(';').map((p) => path.resolve(p));
|
||||||
|
|
||||||
if (PUT_PATHS_ALLOWED.some((allowed_put_path: string) => normalized_path.startsWith(allowed_put_path))) {
|
if (PUT_PATHS_ALLOWED.some((allowed_put_path: string) => normalized_path.startsWith(allowed_put_path))) {
|
||||||
allowed.push('PUT');
|
allowed.push('PUT');
|
||||||
}
|
}
|
||||||
|
|
||||||
DELETE_PATHS_ALLOWED = DELETE_PATHS_ALLOWED ??
|
DELETE_PATHS_ALLOWED = DELETE_PATHS_ALLOWED ??
|
||||||
(Deno.env.get('SERVERUS_DELETE_PATHS_ALLOWED') ?? '').split(';').map((delete_path) =>
|
(Deno.env.get('SERVERUS_DELETE_PATHS_ALLOWED') ?? '').split(';').map((p) => path.resolve(p));
|
||||||
path.resolve(path.join(Deno.cwd(), delete_path))
|
|
||||||
);
|
|
||||||
|
|
||||||
if (DELETE_PATHS_ALLOWED.some((allowed_delete_path: string) => normalized_path.startsWith(allowed_delete_path))) {
|
if (DELETE_PATHS_ALLOWED.some((allowed_delete_path: string) => normalized_path.startsWith(allowed_delete_path))) {
|
||||||
allowed.push('DELETE');
|
allowed.push('DELETE');
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue