forked from MapComplete/MapComplete
		
	Fix prefix error
This commit is contained in:
		
							parent
							
								
									9058516492
								
							
						
					
					
						commit
						1af988a19d
					
				
					 1 changed files with 15 additions and 4 deletions
				
			
		|  | @ -104,6 +104,9 @@ class OsmPoiDatabase { | ||||||
| class Server { | class Server { | ||||||
|     constructor( |     constructor( | ||||||
|         port: number, |         port: number, | ||||||
|  |         options: { | ||||||
|  |             ignorePathPrefix?: string[] | ||||||
|  |         }, | ||||||
|         handle: { |         handle: { | ||||||
|             mustMatch: string | RegExp |             mustMatch: string | RegExp | ||||||
|             mimetype: string |             mimetype: string | ||||||
|  | @ -140,6 +143,14 @@ class Server { | ||||||
|                 while (path.startsWith("/")) { |                 while (path.startsWith("/")) { | ||||||
|                     path = path.substring(1) |                     path = path.substring(1) | ||||||
|                 } |                 } | ||||||
|  |                 if (options?.ignorePathPrefix) { | ||||||
|  |                     for (const toIgnore of options.ignorePathPrefix) { | ||||||
|  |                         if (path.startsWith(toIgnore)) { | ||||||
|  |                             path = path.substring(toIgnore.length + 1) | ||||||
|  |                             break | ||||||
|  |                         } | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|                 console.log("Handling ", path) |                 console.log("Handling ", path) | ||||||
|                 const handler = handle.find((h) => { |                 const handler = handle.find((h) => { | ||||||
|                     if (typeof h.mustMatch === "string") { |                     if (typeof h.mustMatch === "string") { | ||||||
|  | @ -202,11 +213,11 @@ class Server { | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| const connectionString = "postgresql://user:password@localhost:5444/osm-poi" | const connectionString = "postgresql://user:password@localhost:5445/osm-poi" // "postgresql://user:password@localhost:5444/osm-poi"
 | ||||||
| const tcs = new OsmPoiDatabase(connectionString) | const tcs = new OsmPoiDatabase(connectionString) | ||||||
| const server = new Server(2345, [ | const server = new Server(2345, { ignorePathPrefix: ["summary"] }, [ | ||||||
|     { |     { | ||||||
|         mustMatch: "summary/status.json", |         mustMatch: "status.json", | ||||||
|         mimetype: "application/json", |         mimetype: "application/json", | ||||||
|         handle: async (path: string) => { |         handle: async (path: string) => { | ||||||
|             const layers = await tcs.getLayers() |             const layers = await tcs.getLayers() | ||||||
|  | @ -215,7 +226,7 @@ const server = new Server(2345, [ | ||||||
|         }, |         }, | ||||||
|     }, |     }, | ||||||
|     { |     { | ||||||
|         mustMatch: /summary\/[a-zA-Z0-9+_-]+\/[0-9]+\/[0-9]+\/[0-9]+\.json/, |         mustMatch: /[a-zA-Z0-9+_-]+\/[0-9]+\/[0-9]+\/[0-9]+\.json/, | ||||||
|         mimetype: "application/json", // "application/vnd.geo+json",
 |         mimetype: "application/json", // "application/vnd.geo+json",
 | ||||||
|         async handle(path) { |         async handle(path) { | ||||||
|             console.log("Path is:", path, path.split(".")[0]) |             console.log("Path is:", path, path.split(".")[0]) | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue