基于node 搭建http2服务
2024-08-30 13:50:54
1、准备工作:安装node
2、安装http2: npm install http2 -g
安装完成后,在安装目录中appData/Roaming>npm>node_modules>http2>example 找到localhost.key和localhost.crt文件,后面需要用到,这个用于生成证书。(在线证书生成地址:https://csr.chinassl.net/)
3、开始创建http2服务
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:8088
检测页面是否使用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');
})();
最新文章
- ActiveX(二)Js 监听 ActiveX中的事件
- python中的迭代与递归
- dubbo-admin-2.5.3 运行报错: Bean property 'URIType' is not writable or has an invalid 解决方法
- java中重载、覆盖和隐藏三者的区别分析
- 洛谷P1203 [USACO1.1]坏掉的项链Broken Necklace
- 最短路(Dijkstra) POJ 1062 昂贵的聘礼
- HTTP协议(转自:小坦克博客)
- 美化select的jquery插件
- Xamarin Mono 环境搭建
- (3)ES6解构赋值-对象篇
- JavaScript配合button.onclick()使用总结
- leetcode python最长回文子串
- How do I install Daydream on my phone?
- [转] 对Array.prototype.slice.call()方法的理解
- linux命令之kill篇
- 基于Nginx+Keepalived的LB服务监控(邮件报警)
- 微信小程序swiper制作内容高度不定的tab选项卡
- HNA CloudOS | 容器云服务专家
- 解题报告:hdu1284 钱币兑换问题
- zipkin之brave