2016-03-16 21 views
8

是否有可能获得浏览器用于获取活动页面的协议?
喜欢的东西:从javascript中检测连接协议(HTTP/2,spdy)

performance.navigation.protocol // e.g. "HTTP/2" or "SPDY/3.1" or "HTTP/1.1" 

我知道,它可以检测协议服务器端,然后传递信息,但是我正在寻找一个JS的解决方案。

(一similar question包含损坏的链接,并没有回答)

+0

可以为您做一个HEAD请求'位置.href'with ajax?编辑:nevermind,我没有看到反应道具,无论如何将表明它... – dandavis

+0

你需要什么这个? – Bergi

+0

'''performance.getEntries()[0] .nextHopProtocol'''适用于Chrome – everconfusedGuy

回答

6

它被standardisedperformance.timing.nextHopProtocol,但镀铬有non-standard implementation已经在window.chrome.loadTimes().connectionInfo

if (performance && performance.timing.nextHopProtocol) { 
    console.log('Protocol:' + performance.timing.nextHopProtocol); 
} else if (window.chrome && window.chrome.loadTimes) { 
    console.log('Protocol:' + window.chrome.loadTimes().connectionInfo); 
} else { 
    console.log("Browser does not expose connection protocol"); 
}