• Base64编码原理及应用

    技术 2018-06-12

    前言Base64是一种用可见字符传输二进制数据的编码方式。本文介绍Base64编码的原理,以及在web中的应用。简介有些场合,我们需要储存和发送文件,又不方便直接使用二进制流。这时候,我们需要把二进制数据翻译成成字符串,写进代码或XML里。ASCII编码虽然也能做到,但因为含有无法显示和打印字符,不...

  • 全面了解 Http Cookie

    技术 2018-06-07

    前言Cookie是web开发中常用协议之一,用于储存数据到用户终端。作为一个二十多年的老朋友,大家想必都不陌生。本文全面介绍cookie的原理、属性、使用方法、安全性,深入了解cookie的每个细节。请注意,Cookie和Set-Cookie只是http header的一个属性而已。除了浏览器,其他...

  • HTML5 <datalist> 简介及兼容方案

    技术 2018-05-18

    <datalist>是HTML5引入的新元素,用于输入提示。本文介绍<datalist>的语法、交互逻辑,并分别给出基于Vue和React的兼容方案。语法详情参考:https://developer.mozilla.org/en-US/docs/Web/HTML/Elemen...

  • 自定义字体@font-face的常见应用

    技术 2018-04-27

    前言@font-face允许网页自带字体,从而消除对用户电脑字体的依赖。基本用法如下:@font-face {     font-family: "family-name"; /* 字体名 ...

  • 浅谈前端字体子集化

    技术 2018-04-18

    前言使用个性化的字体是设计师的基本诉求。在web端使用特殊字体,前端工程师更喜欢引入自定义字体(@font-face),而不是用图。因为使用字体有若干好处:内容可以被复制,用户体验更好方便修改内容(在HTML中直接修改文字)方便矢量缩放(在CSS中使用font-size定义大小)方便修改颜色(在CS...

  • CentOS升级Linux内核备忘录

    技术 2018-04-01

    操作系统总会不定期暴露出一些安全漏洞。养成定期更新Linux内核的习惯,让自己的服务器更安全。确切的讲,Linux只是一个操作系统的内核(kernel),而我们常用的CentOS是基于Linux内核的发行版(distribution),整合了各种程序工具和库。如果当前版本的内核暴露了严重的安全漏洞,...

  • 详解TCP/IP协议族中的Checksum(头部校验和)

    技术 2018-03-01

    前言Checksum算法广泛应用于TCP/IP协议族,用于校验IP、TCP、UDP数据。以IP协议为例,如下图:其中大部分字段看看文档就能明白,只是头部校验和checksum字段,协议中没有提供算法和示例。以下内容将详细介绍checksum的原理和算法,并提供C、PHP、Node.js的函数源码。计...

  • 钻牛角尖:<b> 和 <strong> 有什么区别?

    技术 2018-02-10

    相比起城会玩的JavaScript和花样多的CSS,HTML可以用来出面试题的考点并不多。有些无事生非的面试官就提出这个的问题:<b> 和 <strong> 有什么区别?定义HTML标准中的<b>:The HTML Bring Attention To eleme...

  • TCP粘包/拆包 の 原理、解包方案和测试用例

    技术 2018-02-02

    摘要TCP是最常用的传输层协议之一。作为一种字节流协议,需要应用层提供分包协议和方案。ECMAScript 2015 (ES6) 引入Buffer类作为Node.js API的一部分,使其具备了处理二进制流的能力,正好适用于TCP 流这样的场景。本文使用Node.js实现了TCP解包方案,并给出基于...

  • 前端构建工具Parcel 了解一下

    技术 2018-01-16

    几个没有基础的人,各自选择了自己感兴趣的语言,一起学习编程。几天之后,问他们都学了些啥。学C++的人说:我写了个简单的程序,输出九九乘法表;学C++的人说:我写了个发声程序,猫叫狗叫动物叫;学phthon的人说,我web服务器都搭好了。最后学前端开发的说:我学会了怎么搭建开发环境。构建工具向来就是前...

TOP