[TOC]
# 最小推荐
以下是构成任何 Web 页面(网站/应用程序)的基本要素:
~~~
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
以上 2 个 meta 标签 *必须* 放在 head 之前,以确保正确的文档呈现;
其他任何 head 元素 *必须* 在这些标签之后。
-->
<title>Page Title</title>
~~~
<br>
# 元素
有效的 `<head>` 元素包括 `meta`, `link`, `title`, `style`, `script`, `noscript`, 和`base`。
这些元素提供了如何通过如浏览器,搜索引擎,网络爬虫等网络技术来感知和呈现文档的信息。
~~~
<!-- 设置此文档的字符编码,以便 UTF-8 范围中的所有字符(如 emoji)都能正确显示 -->
<meta charset="utf-8">
<!-- 设置文档标题 -->
<title>页面标题</title>
<!-- 设置文档中所有相对链接的基础链接 -->
<base href="https://example.com/page.html">
<!-- 链接一个外部 CSS 文件 -->
<link rel="stylesheet" href="styles.css">
<!-- 用于文档内的 CSS -->
<style>
/* ... */
</style>
<!-- JavaScript & No-JavaScript 标签 -->
<script>
// function(s) go here
</script>
<noscript>
<!--无 JS 时显示-->
</noscript>
~~~
<br>
# Meta
~~~
<!--
以上 2 个 meta 标签 *必须* 放在 head 之前,以确保正确的文档呈现;
其他任何 head 元素 *必须* 在这些标签之后。
† 如果你的项目需要支持 Internet Explorer 11 之前的版本,请使用 content="ie-edge" 标签。
-->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- 允许控制资源从何处加载。在 <head> 中尽可能地靠前放置,因为该标签仅适用于在其之后声明的资源。-->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'">
<!-- Web 应用的名称(仅当网站被用作为一个应用时才使用)-->
<meta name="application-name" content="应用名称">
<!-- Chrome、Firefox OS 和 Opera 的主题颜色 -->
<meta name="theme-color" content="#4285f4">
<!-- 针对页面的简短描述(限制 150 字符)-->
<!-- 此内容*可能*被用作搜索引擎结果的一部分。 -->
<meta name="description" content="一个页面描述">
<!-- 控制搜索引擎的抓取和索引行为 -->
<meta name="robots" content="index,follow"><!-- 所有搜索引擎 -->
<meta name="googlebot" content="index,follow"><!-- 仅对 Google 有效 -->
<!-- 告诉 Google 不显示网站链接的搜索框 -->
<meta name="google" content="nositelinkssearchbox">
<!-- 告诉 Google 不提供此页面的翻译 -->
<meta name="google" content="notranslate">
<!-- 验证网址所有权 -->
<meta name="google-site-verification" content="verification_token"><!-- Google Search Console -->
<meta name="yandex-verification" content="verification_token"><!-- Yandex Webmasters -->
<meta name="msvalidate.01" content="verification_token"><!-- Bing Webmaster Center -->
<meta name="alexaVerifyID" content="verification_token"><!-- Alexa Console -->
<meta name="p:domain_verify" content="code from pinterest"><!-- Pinterest Console -->
<meta name="norton-safeweb-site-verification" content="norton code"><!-- Norton Safe Web -->
<!-- 确定用于构建页面的软件(如 - WordPress、Dreamweaver)-->
<meta name="generator" content="program">
<!-- 关于你的网站主题的简短描述 -->
<meta name="subject" content="你的网站主题">
<!-- 基于网站内容给出一般的年龄分级 -->
<meta name="rating" content="General">
<!-- 允许控制 referrer 信息如何传递 -->
<meta name="referrer" content="no-referrer">
<!-- 禁用自动检测和格式化可能的电话号码 -->
<meta name="format-detection" content="telephone=no">
<!-- 通过设置为 "off" 完全退出 DNS 预取 -->
<meta http-equiv="x-dns-prefetch-control" content="off">
<!-- 在客户端存储 cookie,web 浏览器的客户端识别 -->
<meta http-equiv="set-cookie" content="name=value; expires=date; path=url">
<!-- 指定要显示在一个特定框架中的页面 -->
<meta http-equiv="Window-Target" content="_value">
<!-- 地理标签 -->
<meta name="ICBM" content="latitude, longitude">
<meta name="geo.position" content="latitude;longitude">
<meta name="geo.region" content="country[-state]"><!-- 国家代码 (ISO 3166-1): 强制性, 州代码 (ISO 3166-2): 可选; 如 content="US" / content="US-NY" -->
<meta name="geo.placename" content="city/town"><!-- 如 content="New York City" -->
~~~
<br>
* [Content-Security-Policy](http://www.ruanyifeng.com/blog/2016/09/csp.html)
* 📖 [Google 可以识别的 Meta 标签
](https://support.google.com/webmasters/answer/79812?hl=en)
* 📖 [ WHATWG Wiki: Meta 拓展
](https://wiki.whatwg.org/wiki/MetaExtensions)
* 📖 [ ICBM - 维基百科
](https://en.wikipedia.org/wiki/ICBM_address#Modern_use)
* 📖 [地理标记 - 维基百科](https://en.wikipedia.org/wiki/Geotagging#HTML_pages)
<br>
# link
~~~
<!-- 指向一个外部 CSS 样式表 -->
<link rel="stylesheet" href="https://example.com/styles.css">
<!-- 有助于防止出现内容重复的问题 -->
<link rel="canonical" href="http://example.com/article/?page=2">
<!-- 链接到当前文档的一个 AMP HTML 版本 -->
<link rel="amphtml" href="https://example.com/path/to/amp-version.html">
<!-- 链接到一个指定 Web 应用程序“安装”凭据的 JSON 文件 -->
<link rel="manifest" href="manifest.json">
<!-- 链接到关于页面所有者的信息 -->
<link rel="author" href="humans.txt">
<!-- 指向一个适用于链接内容的版权申明 -->
<link rel="license" href="copyright.html">
<!-- 给出可能的你的另一种语言的文档位置参考 -->
<link rel="alternate" href="https://es.example.com/" hreflang="es">
<!-- 提供了关于作者或其他人的信息 -->
<link rel="me" href="https://google.com/profiles/thenextweb" type="text/html">
<link rel="me" href="mailto:name@example.com">
<link rel="me" href="sms:+15035550125">
<!-- 链接到一个描述历史记录、文档或其他具有历史意义的材料的集合的文档 -->
<link rel="archives" href="https://example.com/archives/">
<!-- 链接到层次结构中的顶级资源 -->
<link rel="index" href="http://example.com/article/">
<!-- 提供了自我引用 - 当文档有多个可能的引用时非常有用 -->
<link rel="self" type="application/atom+xml" href="http://example.com/atom.xml">
<!-- 分别是一系列页面中的第一个,最后一个,上一个和下一个页面 -->
<link rel="first" href="http://example.com/article/">
<link rel="last" href="http://example.com/article/?page=42">
<link rel="prev" href="http://example.com/article/?page=1">
<link rel="next" href="http://example.com/article/?page=3">
<!-- 当使用第三方服务来维护博客时使用 -->
<link rel="EditURI" href="https://example.com/xmlrpc.php?rsd" type="application/rsd+xml" title="RSD">
<!-- 当另一个 WordPress 博客链接到你的 WordPress 博客或文章时形成一个自动化的评论 -->
<link rel="pingback" href="https://example.com/xmlrpc.php">
<!-- 当你在自己的页面上链接到一个 url 时通知它 -->
<link rel="webmention" href="https://example.com/webmention">
<!-- 启用通过 Micropub 客户端发布你的域名 -->
<link rel="micropub" href="https://example.com/micropub">
<!-- 打开搜索 -->
<link rel="search" href="/open-search.xml" type="application/opensearchdescription+xml" title="Search Title">
<!-- Feeds -->
<link rel="alternate" href="https://feeds.feedburner.com/example" type="application/rss+xml" title="RSS">
<link rel="alternate" href="https://example.com/feed.atom" type="application/atom+xml" title="Atom 0.3">
<!-- 预取,预载,预浏览 -->
<!-- 更多信息:https://css-tricks.com/prefetching-preloading-prebrowsing/ -->
<link rel="dns-prefetch" href="//example.com/">
<link rel="preconnect" href="https://www.example.com/">
<link rel="prefetch" href="https://www.example.com/">
<link rel="prerender" href="https://example.com/">
<link rel="preload" href="image.png" as="image">
~~~
* 📖 [链接关系](https://www.iana.org/assignments/link-relations/link-relations.xhtml)
<br>
# 网站图标
~~~
<!-- 针对 IE 10 及以下版本 -->
<!-- 如果将 `favicon.ico` 放在根目录下,则无需标签 -->
<!-- 我们目前需要提供的最大的网站图标尺寸 -->
<link rel="icon" sizes="192x192" href="/path/to/icon.png">
<!-- Apple 触摸图标 (尺寸同样是 192x192) -->
<link rel="apple-touch-icon" href="/path/to/apple-touch-icon.png">
<!-- Safari 固定选项卡图标 -->
<link rel="mask-icon" href="/path/to/icon.svg" color="blue">
~~~
* 📖 [所有关于网站图标(和触摸图标)的信息
](https://bitsofco.de/all-about-favicons-and-touch-icons/)
* 📖 [创建固定选项卡图标
](https://developer.apple.com/library/content/documentation/AppleApplications/Reference/SafariWebContent/pinnedTabs/pinnedTabs.html)
* 📖 [网站图标对照表
](https://github.com/audreyr/favicon-cheat-sheet)
* 📖 [网址图标 & 浏览器颜色表](https://developers.google.com/web/fundamentals/design-and-ux/browser-customization/)
<br>
# 社交
## Facebook Open Graph
~~~
<meta property="fb:app_id" content="123456789">
<meta property="og:url" content="http://example.com/page.html">
<meta property="og:type" content="website">
<meta property="og:title" content="Content Title">
<meta property="og:image" content="http://example.com/image.jpg">
<meta property="og:description" content="Description Here">
<meta property="og:site_name" content="Site Name">
<meta property="og:locale" content="en_US">
<meta property="article:author" content="">
~~~
* 📖 [Facebook 的 Open Graph 的标记
](https://developers.facebook.com/docs/sharing/webmasters#markup)
* 📖 [Open Graph 协议](http://ogp.me/)
* 🛠 [页面验证 - Facebook Sharing Debugger](https://developers.facebook.com/tools/debug/)
<br>
## Twitter Card
~~~
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@site_account">
<meta name="twitter:creator" content="@individual_account">
<meta name="twitter:url" content="http://example.com/page.html">
<meta name="twitter:title" content="Content Title">
<meta name="twitter:description" content="Content description less than 200 characters">
<meta name="twitter:image" content="http://example.com/image.jpg">
~~~
* 📖 [名片入门指南 - Twitter 开发者](https://dev.twitter.com/cards/getting-started)
* 🛠 [页面验证 - Twitter Card Validator](https://cards-dev.twitter.com/validator)
<br>
## Twitter Privacy
如如果你在自己的网站中嵌入了推文,Twitter 可以使用你网站上的信息为 Twitter 用户定制内容和建议。[更多关于Twitter隐私选项](https://dev.twitter.com/web/overview/privacy#what-privacy-options-do-website-publishers-have)。
~~~
<!-- 禁止 Twitter 使用你网站上的信息用于提供个性化的目的 -->
<meta name="twitter:dnt" content="on">
~~~
<br>
## Google+ / Schema.org
~~~
<html lang="" itemscope itemtype="http://schema.org/Article">
<head>
<link rel="author" href="">
<link rel="publisher" href="">
<meta itemprop="name" content="内容标题">
<meta itemprop="description" content="内容描述少于 200 个字符">
<meta itemprop="image" content="http://example.com/image.jpg">
~~~
注意: 这个标记需要将属性添加到你的顶级 html 标签中
* 🛠 请在 [结构化数据测试工具](https://developers.google.com/structured-data/testing-tool/) 上测试你的页面
<br>
## Pinterest
根据他们的帮助中心可知,Pinterest 允许你禁止他人保存你网站里的内容。description 为可选。
~~~
<meta name="pinterest" content="nopin" description="Sorry, you can't save from my website!">
~~~
<br>
## Facebook Instant Articles
~~~
<meta charset="utf-8">
<meta property="op:markup_version" content="v1.0">
<!-- 你的文章的 Web 版网址 -->
<link rel="canonical" href="https://example.com/article.html">
<!-- 用于该文章的样式 -->
<meta property="fb:article_style" content="myarticlestyle">
~~~
* 📖 [创建文章
](https://developers.facebook.com/docs/instant-articles/guides/articlecreate)
* 📖 [代码示例](https://developers.facebook.com/docs/instant-articles/reference)
<br>
## OEmbed
~~~
<link rel="alternate" type="application/json+oembed"
href="http://example.com/services/oembed?url=http%3A%2F%2Fexample.com%2Ffoo%2F&format=json"
title="oEmbed Profile: JSON">
<link rel="alternate" type="text/xml+oembed"
href="http://example.com/services/oembed?url=http%3A%2F%2Fexample.com%2Ffoo%2F&format=xml"
title="oEmbed Profile: XML">
~~~
* 📖 [oEmbed 格式](http://oembed.com/)
<br>
# 浏览器/平台
## Apple iOS
~~~
<!-- 智能应用 Banner -->
<meta name="apple-itunes-app" content="app-id=APP_ID,affiliate-data=AFFILIATE_ID,app-argument=SOME_TEXT">
<!-- 禁用自动检测和格式化可能的电话号码 -->
<meta name="format-detection" content="telephone=no">
<!-- 添加到主屏幕 -->
<!-- 启动图标 (大于等于 180x180px) -->
<link rel="apple-touch-icon" href="/path/to/apple-touch-icon.png">
<!-- 启动屏幕图片 -->
<link rel="apple-touch-startup-image" href="/path/to/launch.png">
<!-- 启动图标的标题 -->
<meta name="apple-mobile-web-app-title" content="应用标题">
<!-- 启用独立(全屏)模式 -->
<meta name="apple-mobile-web-app-capable" content="yes">
<!-- 状态栏外观(除非启用独立模式,否则无效) -->
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- iOS 应用深层链接 -->
<meta name="apple-itunes-app" content="app-id=APP-ID, app-argument=http/url-sample.com">
<link rel="alternate" href="ios-app://APP-ID/http/url-sample.com">
~~~
* 📖 [配置 Web 应用程序](https://developer.apple.com/library/content/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html)
<br>
## Google Android
~~~
<meta name="theme-color" content="#E64545">
<!-- 添加到主屏幕 -->
<meta name="mobile-web-app-capable" content="yes">
<!-- More info: https://developer.chrome.com/multidevice/android/installtohomescreen -->
<!-- Android app deep linking -->
<meta name="google-play-app" content="app-id=package-name">
<link rel="alternate" href="android-app://package-name/http/url-sample.com">
~~~
<br>
## Google Chrome
~~~
<link rel="chrome-webstore-item" href="https://chrome.google.com/webstore/detail/APP_ID">
<!-- 禁用翻译提示 -->
<meta name="google" content="notranslate">
~~~
<br>
## Microsoft Internet Explorer
~~~
<!-- 强制 IE 8/9/10 使用其最新的渲染引擎 -->
<meta http-equiv="x-ua-compatible" content="ie=edge">
<!-- 通过 Skype Toolbar 浏览器扩展功能禁用自动检测和格式化可能的电话号码 -->
<meta name="skype_toolbar" content="skype_toolbar_parser_compatible">
<!-- Windows 磁贴 -->
<meta name="msapplication-config" content="/browserconfig.xml">
~~~
browserconfig.xml所需的最低xml标记:
~~~
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square70x70logo src="small.png"/>
<square150x150logo src="medium.png"/>
<wide310x150logo src="wide.png"/>
<square310x310logo src="large.png"/>
</tile>
</msapplication>
</browserconfig>
~~~
* 📖 [浏览器配置模式参考](https://msdn.microsoft.com/en-us/library/dn320426.aspx)
<br>
# 浏览器(中国)
## 360浏览器
~~~
<!-- 选择渲染引擎 -->
<meta name="renderer" content="webkit|ie-comp|ie-stand">
~~~
<br>
## QQ手机浏览器
~~~
<!-- 在指定方向上锁定屏幕(锁定横/竖屏) -->
<meta name="x5-orientation" content="landscape/portrait">
<!-- 全屏显示此页面 -->
<meta name="x5-fullscreen" content="true">
<!-- 页面将以“应用模式”显示(全屏等)-->
<meta name="x5-page-mode" content="app">
~~~
<br>
## UC Mobile Browser
~~~
<!-- 在指定方向上锁定屏幕(锁定横/竖屏) -->
<meta name="screen-orientation" content="landscape/portrait">
<!-- 全屏显示此页面 -->
<meta name="full-screen" content="yes">
<!-- 即使在“文本模式”下,UC 浏览器也会显示图片 -->
<meta name="imagemode" content="force">
<!-- 页面将以“应用模式”显示(全屏、禁止手势等) -->
<meta name="browsermode" content="application">
<!-- 在此页面禁用 UC 浏览器的“夜间模式” -->
<meta name="nightmode" content="disable">
<!-- 简化页面,减少数据传输 -->
<meta name="layoutmode" content="fitscreen">
<!-- 禁用的 UC 浏览器的功能,“当此页面中有较多文本时缩放字体” -->
<meta name="wap-font-scale" content="no">
~~~
* 📖 [UC 浏览器文档](http://www.uc.cn/download/UCBrowser_U3_API.doc)
<br>
# 应用链接
~~~
<!-- iOS -->
<meta property="al:ios:url" content="applinks://docs">
<meta property="al:ios:app_store_id" content="12345">
<meta property="al:ios:app_name" content="App Links">
<!-- Android -->
<meta property="al:android:url" content="applinks://docs">
<meta property="al:android:app_name" content="App Links">
<meta property="al:android:package" content="org.applinks">
<!-- Web fall back -->
<meta property="al:web:url" content="http://applinks.org/documentation">
~~~
* 📖 [应用链接文档](http://applinks.org/documentation/)
# 参考资料
* https://gethead.info/
* https://github.com/Amery2010/HEAD
- 第一部分 HTML
- meta
- meta标签
- HTML5
- 2.1 语义
- 2.2 通信
- 2.3 离线&存储
- 2.4 多媒体
- 2.5 3D,图像&效果
- 2.6 性能&集成
- 2.7 设备访问
- SEO
- Canvas
- 压缩图片
- 制作圆角矩形
- 全局属性
- 第二部分 CSS
- CSS原理
- 层叠上下文(stacking context)
- 外边距合并
- 块状格式化上下文(BFC)
- 盒模型
- important
- 样式继承
- 层叠
- 属性值处理流程
- 分辨率
- 视口
- CSS API
- grid(未完成)
- flex
- 选择器
- 3D
- Matrix
- AT规则
- line-height 和 vertical-align
- CSS技术
- 居中
- 响应式布局
- 兼容性
- 移动端适配方案
- CSS应用
- CSS Modules(未完成)
- 分层
- 面向对象CSS(未完成)
- 布局
- 三列布局
- 单列等宽,其他多列自适应均匀
- 多列等高
- 圣杯布局
- 双飞翼布局
- 瀑布流
- 1px问题
- 适配iPhoneX
- 横屏适配
- 图片模糊问题
- stylelint
- 第三部分 JavaScript
- JavaScript原理
- 内存空间
- 作用域
- 执行上下文栈
- 变量对象
- 作用域链
- this
- 类型转换
- 闭包(未完成)
- 原型、面向对象
- class和extend
- 继承
- new
- DOM
- Event Loop
- 垃圾回收机制
- 内存泄漏
- 数值存储
- 连等赋值
- 基本类型
- 堆栈溢出
- JavaScriptAPI
- document.referrer
- Promise(未完成)
- Object.create
- 遍历对象属性
- 宽度、高度
- performance
- 位运算
- tostring( ) 与 valueOf( )方法
- JavaScript技术
- 错误
- 异常处理
- 存储
- Cookie与Session
- ES6(未完成)
- Babel转码
- let和const命令
- 变量的解构赋值
- 字符串的扩展
- 正则的扩展
- 数值的扩展
- 数组的扩展
- 函数的扩展
- 对象的扩展
- Symbol
- Set 和 Map 数据结构
- proxy
- Reflect
- module
- AJAX
- ES5
- 严格模式
- JSON
- 数组方法
- 对象方法
- 函数方法
- 服务端推送(未完成)
- JavaScript应用
- 复杂判断
- 3D 全景图
- 重载
- 上传(未完成)
- 上传方式
- 文件格式
- 渲染大量数据
- 图片裁剪
- 斐波那契数列
- 编码
- 数组去重
- 浅拷贝、深拷贝
- instanceof
- 模拟 new
- 防抖
- 节流
- 数组扁平化
- sleep函数
- 模拟bind
- 柯里化
- 零碎知识点
- 第四部分 进阶
- 计算机原理
- 数据结构(未完成)
- 算法(未完成)
- 排序算法
- 冒泡排序
- 选择排序
- 插入排序
- 快速排序
- 搜索算法
- 动态规划
- 二叉树
- 浏览器
- 浏览器结构
- 浏览器工作原理
- HTML解析
- CSS解析
- 渲染树构建
- 布局(Layout)
- 渲染
- 浏览器输入 URL 后发生了什么
- 跨域
- 缓存机制
- reflow(回流)和repaint(重绘)
- 渲染层合并
- 编译(未完成)
- Babel
- 设计模式(未完成)
- 函数式编程(未完成)
- 正则表达式(未完成)
- 性能
- 性能分析
- 性能指标
- 首屏加载
- 优化
- 浏览器层面
- HTTP层面
- 代码层面
- 构建层面
- 移动端首屏优化
- 服务器层面
- bigpipe
- 构建工具
- Gulp
- webpack
- Webpack概念
- Webpack工具
- Webpack优化
- Webpack原理
- 实现loader
- 实现plugin
- tapable
- Webpack打包后代码
- rollup.js
- parcel
- 模块化
- ESM
- 安全
- XSS
- CSRF
- 点击劫持
- 中间人攻击
- 密码存储
- 测试(未完成)
- 单元测试
- E2E测试
- 框架测试
- 样式回归测试
- 异步测试
- 自动化测试
- PWA
- PWA官网
- web app manifest
- service worker
- app install banners
- 调试PWA
- PWA教程
- 框架
- MVVM原理
- Vue
- Vue 饿了么整理
- 样式
- 技巧
- Vue音乐播放器
- Vue源码
- Virtual Dom
- computed原理
- 数组绑定原理
- 双向绑定
- nextTick
- keep-alive
- 导航守卫
- 组件通信
- React
- Diff 算法
- Fiber 原理
- batchUpdate
- React 生命周期
- Redux
- 动画(未完成)
- 异常监控、收集(未完成)
- 数据采集
- Sentry
- 贝塞尔曲线
- 视频
- 服务端渲染
- 服务端渲染的利与弊
- Vue SSR
- React SSR
- 客户端
- 离线包
- 第五部分 网络
- 五层协议
- TCP
- UDP
- HTTP
- 方法
- 首部
- 状态码
- 持久连接
- TLS
- content-type
- Redirect
- CSP
- 请求流程
- HTTP/2 及 HTTP/3
- CDN
- DNS
- HTTPDNS
- 第六部分 服务端
- Linux
- Linux命令
- 权限
- XAMPP
- Node.js
- 安装
- Node模块化
- 设置环境变量
- Node的event loop
- 进程
- 全局对象
- 异步IO与事件驱动
- 文件系统
- Node错误处理
- koa
- koa-compose
- koa-router
- Nginx
- Nginx配置文件
- 代理服务
- 负载均衡
- 获取用户IP
- 解决跨域
- 适配PC与移动环境
- 简单的访问限制
- 页面内容修改
- 图片处理
- 合并请求
- PM2
- MongoDB
- MySQL
- 常用MySql命令
- 自动化(未完成)
- docker
- 创建CLI
- 持续集成
- 持续交付
- 持续部署
- Jenkins
- 部署与发布
- 远程登录服务器
- 增强服务器安全等级
- 搭建 Nodejs 生产环境
- 配置 Nginx 实现反向代理
- 管理域名解析
- 配置 PM2 一键部署
- 发布上线
- 部署HTTPS
- Node 应用
- 爬虫(未完成)
- 例子
- 反爬虫
- 中间件
- body-parser
- connect-redis
- cookie-parser
- cors
- csurf
- express-session
- helmet
- ioredis
- log4js(未完成)
- uuid
- errorhandler
- nodeclub源码
- app.js
- config.js
- 消息队列
- RPC
- 性能优化
- 第七部分 总结
- Web服务器
- 目录结构
- 依赖
- 功能
- 代码片段
- 整理
- 知识清单、博客
- 项目、组件、库
- Node代码
- 面试必考
- 91算法
- 第八部分 工作代码总结
- 样式代码
- 框架代码
- 组件代码
- 功能代码
- 通用代码