`Web技术`分类下的文章
keep-alive vs http2有很多文章都说 http2 相比 http1.1 增加了连接复用。这句话其实是不准确的。在 HTTP 1.1 中 所有的连接默认都是持续连接,除非特殊声明不支持。 而在 http1.0 中,官方没有支持 keep-alive, 通常会手动在请求头中添加 Connection:Keep-Alive。keep-alive 就是 TCP 连接复用的开端。改善的效果就是不再重新建立TCP连接,省去 三次握手 的时间...
webpack打包eot、ttf、woff等字体文件问题
Jelon 发表于 标签: webpack / web font
最近因项目需要要将之前做的 npm 包的 css 样式,包括字体样式和字体文件(主要是使用了阿里的iconfont)打到js中,因为之前样式都是直接还是用外链的方式,要改掉,因此,花了一天的时间搞这个,碰到了些比较奇葩的事情,在此记录一下...
文件上传header字段content-type设置问题
Jelon 发表于 标签: 文件上传 / content-type
问题描述 文件通过FormData的方式去上传,头部字段content-type字段设置为`multipart/form-data`,会导致后端无法解析文件内容,导致文件上传失败。文件上传header字段无需设置`multipart/form-data`,因为如果设置了`multipart/form-data`将导致content-type没有边界boundary,从而使得后端无法解释文件流。因为这种情况下建议,header不对content-type进行设置,使用浏览器默认匹配的...
项目 eslint 配置 eslintrc.js
使用 JavaScript、JSON 或者 YAML 文件为整个目录(处理你的主目录)和它的子目录指定配置信息。可以配置一个独立的 .eslintrc.* 文件,或者直接在 package.json 文件里的 eslintConfig 字段指定配置,ESLint 会查找和自动读取它们,再者,你可以在命令行运行时指定一个任意的配置文件...
前端散记
Jelon 发表于 标签: 前端
事件流程如下:(1)捕获阶段:事件从根元素开始向触发事件的目标元素进行传递,传递过程中,如果中间有元素注册了事件处理函数,并且useCapture参数值为true,那么此事件处理函数就会执行,IE9+和其他标准浏览器支持。 (2)目标阶段:触发目标元素对应事件,并执行注册的事件处理函数。 (3)冒泡阶段:从目标元素开始向根元素传递,传递过程中,如果中间有元素注册了事件处理函数,且useCapture值为false,此事件处理函数就会执行...