梦魇小栈

WebRTC 入门指南

3,675 字 约 10 分钟 评论

WebRTC (Web Real-Time Communications) 是由谷歌开源并推进纳入 W3C 标准的一项实时通讯技术,它允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点(Peer-to-Peer)的连接,实现视频流和(或)音频流或者其他任意数据的传输。WebRTC 包含的这些标准使用户在无需安装任何插件或者第三方的软件的情况下,创建点对点(Peer-to-Peer)的数据分享和电话会议成为可能。

与 Web 世界经典的 B/S 架构最大的不同是,WebRTC 的通信不经过服务器,而直接与客户端连接,在节省服务器资源的同时,提高通信效率。为了做到这点,一个典型的 WebRTC 通信过程,包含四个步骤:找到对方->进行协商->建立连接->开始通讯。下面将分别阐述这四个步骤。

阅读全文

将你的博客升级为 PWA 渐进式Web离线应用

6,943 字 约 21 分钟 评论

什么是 PWA

PWA 全称 Progressive Web Apps(渐进式 Web 应用程序),旨在使用现有的 Web 技术提供用户更优的使用体验。 基本要求

  • 可靠(Reliable) 一方面是指 PWA 的安全性,PWA 只能运行在 HTTPS 上;另一方面是指在网络不稳定或者没网情况下,PWA 依然可以访问。
  • 快速响应(Fast) 快速响应用户的交互行为,并且具有平滑流畅的动画、加载速度、渲染速度和渲染性能等。
  • 粘性(Engaging) 通过添加到桌面以及离线消息推送,能带来用户的第二次访问,并且依靠良好的用户体验吸引用户再次访问。

官网链接:Progressive Web Apps

阅读全文

Hexo 博客美化代码块

2,567 字 约 8 分钟 评论

最近有人问我博客的代码块是怎么做的,如下面的代码块,然后好久没有写文章了,趁着周末有时间就水一篇吧~

javascript · 代码预览
var arr = 'abcdaabc';

var info = arr
    .split('')
    .reduce((p, k) => (p[k]++ || (p[k] = 1), p), {});
阅读全文
查看原图 ↗