【发布时间】:2014-10-16 19:30:30
【问题描述】:
考虑代码:
somepage.php
<?php header('Location: index.php'); ?>
<!DOCTYPE html>
<html>
<head>
<script>
doSomething(); // does the browser run this?
</script>
</head>
</html>
我正在尝试将 Google Analytics 放在那里,但我不确定人们是否真的在加载分析 JS。
浏览器是否真的在Location 标头发送后查看输出?如果是这样,它真的运行 JavaScript 吗?
【问题讨论】:
-
这是不正确的。它将
Location:标头发送给客户端,客户端执行重定向。 -
@JayBlanchard:呃,不。重定向发生在客户端,以响应服务器向其发送位置标头。
-
@jason:你遇到了竞争条件。一旦客户端收到
Location标头,它可能决定加载/处理页面的其余部分,或者完全放弃它并立即开始重定向。你根本无法保证JS脚本会被解析,更别说被执行了。 -
我的错 - 我知道。当我这么说时,我只是在另一个地方。
标签: javascript php http google-analytics http-headers