Follow a bounded redirect chain
Compare a selected bounded chain with the final URL reported after automatic following.
- redirects
- diagnostics
Prediction
Each redirect resolves one Location value and creates another request until the fixed chain reaches its controlled final target.
Controlled observation
Choose a fixed one-, two-, or three-hop chain and compare the requested hop count with the final URL. The result panel shows only the final Fetch response; it does not reconstruct intermediate exchanges or provide a loop fixture.
Explanation
The final address alone hides redirect status, caching, and method choices made at earlier hops. Use the generated redirect-following cURL command or browser developer tools when the intermediate exchanges matter.
Controlled exercise
Run this observation
Compare the final URL with the requested fixed hop count; Fetch does not expose every intermediate response.
Interactive controls require JavaScript. The static response and portable examples remain available below.
Ready. No request has run.
Controlled request
- Method
- GET
- URL
https://lab.httpclarity.com/v1/redirect-chain/1- Permitted headers
- None
- Body
- None
Browser-observed response
No live response yet. The representative static example remains useful without JavaScript or the Worker.
Static response example
HTTP/1.1 302 Found
Location: /v1/redirect-target/chain
X-Lab-Scenario: redirect-chain
[first response in fixed 1-hop chain]Timing is browser elapsed time. Fetch hides Set-Cookie, raw wire bytes, reliable compressed size, and some redirect details.
Portable examples
'curl' '--include' '--location' '--request' 'GET' 'https://lab.httpclarity.com/v1/redirect-chain/1'Scroll horizontally to read any long lines.const response = await fetch("https://lab.httpclarity.com/v1/redirect-chain/1", {
"method": "GET",
"redirect": "follow"
});
console.log(response.status, await response.text());Scroll horizontally to read any long lines.<?php
$options = ['http' => [
'method' => 'GET',
'ignore_errors' => true,
]];
$context = stream_context_create($options);
$body = file_get_contents('https://lab.httpclarity.com/v1/redirect-chain/1', false, $context);
var_dump($http_response_header, $body);Scroll horizontally to read any long lines.Need a full API client? Copy the generated cURL command, then import it in Hoppscotch. HTTPClarity sends no request data to Hoppscotch.
Continue in Hoppscotch (opens in a new tab)