例如,如果我写了包含一个链接到的JavaScript,而这花费了1秒钟加载第三方下面的代码:当内联JavaScript正在执行时,Web浏览器是否保持在Web服务器连接?
<!DOCTYPE>
<html>
<head>
</head>
<body>
// note no async attribute!
<script src="//thirdparty.com/some/slow/loading/script.js">
</script>
</body>
</html>
请问HTTP连接到我的网络服务器保持打开状态,直到的的结束文件?
更新: 我不是在Connection:Keep-alive的背景下说话,这显然会在页面加载后保留连接。我指的是浏览器可能没有完全从服务器读取文档的内容,因为它会执行内嵌的JavaScript,所以它仍然保留其连接以继续阅读文件的其余部分,或者这将被读取,但尚未添加到DOM?
取决于浏览器,但大多数是'Connection:Keep-Alive' – Bergi 2013-03-16 19:42:53
您似乎认为浏览器一次只下载一行HTML文件,遇到脚本标记时它会暂停下载HTML文件,开始下载脚本。事实并非如此。它下载HTML文件,解析它,然后下载资源(实际上)始终是异步的。它只是同步执行它们,除非另有指示。 – JJJ 2013-03-16 19:45:31
@Juhana我不假设,我问这个问题没有假设。 – 3urdoch 2013-03-16 19:46:25