From 019f66bc67cf5a3da7b56df051f40d103ed5cb3f Mon Sep 17 00:00:00 2001 From: Rishabh Date: Fri, 8 May 2026 14:24:43 +0530 Subject: [PATCH] fix: decode URL-encoded characters in SSR pathname URLs with special characters like & (%26) returned 404 because url.pathname was not decoded before route resolution. Co-Authored-By: Claude Opus 4.6 (1M context) --- examples/basic/content/docs/tips-&-tricks.mdx | 9 +++++++++ packages/chronicle/src/server/entry-server.tsx | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 examples/basic/content/docs/tips-&-tricks.mdx diff --git a/examples/basic/content/docs/tips-&-tricks.mdx b/examples/basic/content/docs/tips-&-tricks.mdx new file mode 100644 index 00000000..9a89d35b --- /dev/null +++ b/examples/basic/content/docs/tips-&-tricks.mdx @@ -0,0 +1,9 @@ +--- +title: Tips & Tricks +description: Useful tips and tricks +order: 10 +--- + +# Tips & Tricks + +Some helpful tips and tricks for using Chronicle. diff --git a/packages/chronicle/src/server/entry-server.tsx b/packages/chronicle/src/server/entry-server.tsx index b4c039ed..bc9da4ed 100644 --- a/packages/chronicle/src/server/entry-server.tsx +++ b/packages/chronicle/src/server/entry-server.tsx @@ -19,7 +19,7 @@ import serverAssets from './entry-server?assets=ssr'; export default { async fetch(req: Request) { const url = new URL(req.url); - const pathname = url.pathname; + const pathname = decodeURIComponent(url.pathname); const config = loadConfig(); const route = resolveRoute(pathname, config);