基于node 搭建http2服务

一、准备工做:安装node
二、安装http2: npm install http2 -g
安装完成后,在安装目录中appData/Roaming>npm>node_modules>http2>example 找到localhost.key和localhost.crt文件,后面须要用到,这个用于生成证书。(在线证书生成地址:https://csr.chinassl.net/)node

 


三、开始建立http2服务chrome

const PORT = 8088;

//const spdy = require('spdy');--这个暂时不用管,spdy是http2的前身。
const http2=require('http2');
const path = require('path');
const fs = require('fs');
const url = require('url');

var options = {
    key: fs.readFileSync('./localhost.key'), //读取key
    cert: fs.readFileSync('./localhost.crt') //读取crt
};

var http2server = http2.createServer(options,function(request, response) {
      response.write("hello world");
});
http2server.listen(8088);

访问https://localhost:8088npm

 

检测页面是否使用http2:浏览器

 (function(){
    // 保证这个方法只在支持loadTimes的chrome浏览器下执行
    if(window.chrome && typeof chrome.loadTimes === 'function') {
        var loadTimes = window.chrome.loadTimes();
        var spdy = loadTimes.wasFetchedViaSpdy; 
        var info = loadTimes.npnNegotiatedProtocol || loadTimes.connectionInfo;
        // 就以 「h2」做为判断标识
        if(spdy && /^h2/i.test(info)) {
            return console.info('本站点使用了HTTP/2');
        }
    }
    console.warn('本站点没有使用HTTP/2');
})();
相关文章
相关标签/搜索