Next.js实战项目 | 青训营笔记

111 阅读4分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天

课前的概念

CDN

CDN这个技术其实说起来并不复杂,最初的核心理念,就是将内容缓存在终端用户附近。具体来说,CDN就是采用更多的缓存服务器(CDN边缘节点),布放在用户访问相对集中的地区或网络中。当用户访问网站时,利用全局负载技术,将用户的访问指向距离最近的缓存服务器上,由缓存服务器响应用户请求。(有点像电商的本地仓吧?)

BFF

BFF(Backends For Frontends) 服务于前端的后端。后端各种微服务、API之间的一层胶水代码。主要的业务场景请求转发、数据组织、接口适配、权鉴和SSR。 BFF 是一种逻辑分层,BFF 层服务会更多地考虑接口在前端的使用,并且在服务端直接进行业务逻辑的处理,又称为用户体验适配器。作用如下:

  • 数据处理:字段名处理、数据结构处理、冗余数据处理

  • 接口聚合:让后端更注重服务基础能力的开发,更聚焦业务模型本身,见面的交互与逻辑由 BFF 层来完成

  • 服务于多个终端,Web 端、H5 活动页、小程序、IOS、Android... 底层基础服务不需要考虑不同设备的兼容逻辑,这个需求前端同学更清楚

SSR(服务端渲染)

SSR是Server Side Render简称;页面上的内容是通过服务端渲染生成的,浏览器直接显示服务端返回的html就可以了。

CSR(浏览器端渲染)

CSR是Client Side Render简称;页面上的内容是我们加载的js文件渲染出来的,js文件运行在浏览器上面,服务端只返回一个html模板。

更多内容服务端渲染(SSR) - 知乎 (zhihu.com)

SSG

SSG(Static Site Generation) 是静态站点生成,解析是在构建时执行的,当发出请求时,html 将静态存储,直接发送回客户端。 通常来说,静态站点在运行时会更快,因为不需要服务端做处理,但缺点是对数据的任何更改都需要在服务端进行完全重建;而服务端渲染则会动态处理数据,不需要进行完全重建。

SEO

SEO就是指按照搜索引擎的算法,提升你的文章在搜索引擎中的自然排名。

SEO,也就是搜索引擎优化的逻辑,其实是非常简单的。这就像是在大学里的学生会主席,你要让投票者给你更多的选票。那么,你需要先「自我优化」,无论是外表还是能力;此外,你还需获得更多意见领袖的推荐,才可以让更多普通选民支持你。

同样的,你要让搜索引擎在无数的文章,把你的文章排到前面。你首先需要先做:

1. 内部优化:也就是提高文章本身的质量

2. 外部优化:也就是让你的文章曝光在更多权威网站上

TDK

但凡了解一些SEO的朋友肯定都知道,网站首页的TDK(title、description、keywords)很重要。就title标题来说;说它重要,对于某些类型的网站来说确实重要:比如那些需要优化某个或某几个主关键词的网站。说它不重要,对于某些类型的网站来说也确实不重要:比如对于那些需要大流量的,覆盖大量长尾词和副关键词类型的网站。说白了,具体得看你打算做一个什么样的网站。不同类型的网站,直接决定了网站TDK的写法。

CSS Modules

官方的解释是所有的类名和动画名称默认都有各自的作用域的CSS文件

所以CSS Modules既不是官方标准,也不是浏览器的特性,而是在构建步骤(例如使用Webpack或Browserify)中对CSS类名和选择器限定作用域的一种方式(类似于命名空间)。它们被限定在特定的模板里。例如我们在buttons.js里引入buttons.css文件,并使用.btn的样式,在其他诸如forms.js里是不会被.btn影响的,除非它也引入了buttons.css.

跨域

首先狭义的同源就是指,域名、协议、端口均为相同。

跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实施的安全限制。 无法跨域是浏览器对于用户安全的考虑。同源策略限制了以下行为: Cookie、LocalStorage 和 IndexDB 无法读取 DOM 和 JS 对象无法获取 Ajax请求发送不出去。

CMS

CMS是Content Management System的缩写,意思为“网站内容管理系统”, 用来管理网站后台,编辑网站前台。

引用参考:

BFF-服务前端的后端(真香) - 掘金 (juejin.cn)

服务端渲染(SSR) - 知乎 (zhihu.com)

什么是SEO?如何进行SEO优化? - 知乎 (zhihu.com)

网站标题title怎么写?网站标题书写规范技巧-君创网络 (kmjcwl.com)