Open MathiasWP opened 2 weeks ago
According to https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#server_error_responses the 500 response is used to indicate that an error has occurred on the server. This is kind of confusing when the error is thrown in the browser.
Link to repro: https://github.com/MathiasWP/500-internal-error-sveltekit-browser
The +page.js load method that will throw a 500 Internal Error
500 Internal Error
import { browser } from "$app/environment" export const load = () => { if(browser) { throw new Error("Thrown on the client") } return {} }
No response
System: OS: macOS 14.4.1 CPU: (8) arm64 Apple M1 Pro Memory: 61.78 MB / 16.00 GB Shell: 5.9 - /bin/zsh Binaries: Node: 20.11.0 - ~/.nvm/versions/node/v20.11.0/bin/node npm: 10.2.4 - ~/.nvm/versions/node/v20.11.0/bin/npm pnpm: 9.0.6 - /opt/homebrew/bin/pnpm bun: 1.0.0 - ~/.bun/bin/bun Browsers: Brave Browser: 124.1.65.114 Chrome: 124.0.6367.62 Safari: 17.4.1 npmPackages: @sveltejs/adapter-auto: ^3.0.0 => 3.2.0 @sveltejs/kit: ^2.0.0 => 2.5.7 @sveltejs/vite-plugin-svelte: ^3.0.0 => 3.1.0 svelte: ^4.2.7 => 4.2.15 vite: ^5.0.3 => 5.2.10
annoyance
This is the intended behavior, but perhaps it could be documented better that +error.svelte won't just be rendered for errors that happen on the server.
+error.svelte
Also related: #8080
Describe the bug
According to https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#server_error_responses the 500 response is used to indicate that an error has occurred on the server. This is kind of confusing when the error is thrown in the browser.
Reproduction
Link to repro: https://github.com/MathiasWP/500-internal-error-sveltekit-browser
The +page.js load method that will throw a
500 Internal Error
Logs
No response
System Info
Severity
annoyance
Additional Information
No response