mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 10:26:08 +01:00 
			
		
		
		
	fix(routes): remove unused wildcard in apiRoute "/api/options/:name/:value*"
the updateOption function that handles the req.param is just destructuring `const { name, value } = req.params;` and does nothing else with the path or any params.
The remaining parts of the wildcard (which can be accessed via req.param[0]) are just ignored here.
even with express v4, this would *always* just take and process the very first part of the path, in the exact wildcard's place, e.g.
`/api/options/locale/de` and
`/api/options/locale/de/test/whatever`
would *both* end up destructuring "value" from req.param as "de" (because it is in the exact place of the 'value' wildcard)
in express v5 the wildcard behaviour changes -> here req.param.value would return an array with the paths split into separate string.
but since the code previously regarded only the first part of the path -> we can just get rid of the wildcard and use a named route param
the only thing to keep in mind: if a request with more than one "value" is received, (e.g. `/api/options/locale/de/test/whatever`) -> since we don't have the wildcard anymore  -> this will turn to a 404.
IMHO that is actually desirable here though
			
			
This commit is contained in:
		| @@ -238,7 +238,7 @@ function register(app: express.Application) { | ||||
|  | ||||
|     apiRoute(GET, "/api/options", optionsApiRoute.getOptions); | ||||
|     // FIXME: possibly change to sending value in the body to avoid host of HTTP server issues with slashes | ||||
|     apiRoute(PUT, "/api/options/:name/:value*", optionsApiRoute.updateOption); | ||||
|     apiRoute(PUT, "/api/options/:name/:value", optionsApiRoute.updateOption); | ||||
|     apiRoute(PUT, "/api/options", optionsApiRoute.updateOptions); | ||||
|     apiRoute(GET, "/api/options/user-themes", optionsApiRoute.getUserThemes); | ||||
|     apiRoute(GET, "/api/options/codeblock-themes", optionsApiRoute.getSyntaxHighlightingThemes); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user