Synthetic teaching example for a website delivery brief. Not a client result, live account test or certification.
A redirect code is part of the form contract
A website buyer may see the expected confirmation screen without knowing whether the browser changed the request method or forwarded the submitted body. For an enquiry or booking form, that distinction affects which endpoint receives data and whether a refresh can repeat a request. Agree the destination and method explicitly.
| Status | Observed Node fetch method | Observed body |
|---|---|---|
| 301 | GET | Empty |
| 302 | GET | Empty |
| 303 | GET | Empty |
| 307 | POST | SYNTHETIC=ONLY |
| 308 | POST | SYNTHETIC=ONLY |
Download the self-contained loopback test and run node post-redirect-test.mjs with Node 24+. It binds an ephemeral port on 127.0.0.1, performs five sequential requests and closes its own server. It never calls a public website, sends an enquiry or uses real contact information.
The output includes the actual Node version and two assertions per status. Treat 301 and 302 here as observations of that runtime’s fetch behaviour, not a universal guarantee about every client. The separate 303 and 307 references below explain the intended method distinction. A permanent redirect also has caching implications beyond this local observation.
What should be proven on an authorised staging form?
Record the initial endpoint, status, Location, follow-up method and whether sensitive data appears in the URL. A POST/Redirect/GET design should not be confused with a method-preserving redirect. Test refresh and replay separately: a redirect alone is not an idempotency mechanism.
Never copy a real form body to a third-party redirect target. Confirm ownership and the retention requirements before tracing production submissions. This fixture contains only a harmless constant and does not test actual browser caching, authentication or a merchant’s processing queue. It changes no HTTP rule or existing form.
Primary facts and limits
MDN 303: Describes retrieving the redirected resource with GET. MDN 307: Describes preserving the request method and body.
Sources reviewed 15 October 2026. The supplied input and acceptance rules are original teaching design; check current platform versions and your actual delivery contract before implementation.