Source code
Revision control
Copy as Markdown
Other Tools
<!doctype html>
<html>
<head>
<title>history.pushState/replaceState and referer headers (before onload)</title>
</head>
<body>
<noscript><p>Enable JavaScript and reload</p></noscript>
<div id="log"></div>
<script type="text/javascript">
var httpReferer = "{{headers[referer]}}";
var lastUrl = location.href.replace(/\/[^\/]*$/,'\/010-2.html?1234');
parent.test(function () {
parent.assert_equals( httpReferer, lastUrl );
}, 'HTTP Referer should use the pushed state (before onload)');
parent.test(function () {
parent.assert_equals( document.referrer, lastUrl );
}, 'document.referrer should use the pushed state (before onload)');
try { history.pushState('','','010-4.html?2345'); } catch(e) {}
location.href = '010-5.html?pipe=sub';
</script>
</body>
</html>