如何在Express 4中正确设置链接预取标头?

时间:2015-06-20 23:48:15

标签: node.js google-chrome express chromium etherpad

根据MDN,正确的方法是发送标题:

Link: </images/big.jpeg>; rel=prefetch

所以我的明确语法是:

res.header('Link', '</images/big.jpeg>; rel=prefetch');

我看到它在我的浏览器中登陆:

Link:</images/big.jpeg>; rel=prefetch

但Chrome从不试图下载图像..元和链接方法工作正常..

我是否设置了标题错误或浏览器无法处理标题值?

UDPATE:好的,看起来我做得对,但Chrome 43&amp; Linux / Ubuntu上的Chromium 43还没有支持。这在Firefox 38中运行良好。

可能是Chromium没有在网络标签中显示预取吗?

更新2:所以看起来Chrome / Chromium隐藏了“网络”标签中的文件传输。如果有人能证实这一点,我会很感激..

1 个答案:

答案 0 :(得分:5)

在Express 4 + ..中设置一个文件的预取。

res.set('Link', '<static/js/file1.js>; rel=prefetch');

对于多个文件。

res.set('Link', '<static/js/file1.js>; rel=prefetch, <static/js/file2.js>; rel=prefetch');

请勿尝试在Chrome中对此进行测试,如果您在“网络”标签下进行调查,Chrome会欺骗您,并将其显示为无效。始终使用Firefox进行测试。

You can see me implementing this in a larger project in context here.