axios可以在node使用可以在浏览器中使用(ajax只能在浏览器中使用)

node基于http浏览器基于xhr,最近node已经可以用fetch

node基于request模块

注意xhr(基于ajax封装对象)

注意:前端导出/下载,向后端请求返回的数据必须是blob格式(一种二进制格式)

前端下载的两种方式:

1.一次性全部下载下来,然后通过Blob.slice方法切片,再做一个假的进度条展示
2.浏览器buffer(缓冲区)

3.http字段range,设置range请求头部分资源下载即可
http请求头range的使用:

缓冲区

缓冲区是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。缓冲区根据其对应的是输入设备还是输出设备分为输入缓冲区和输出缓冲区。

我们为什么要引入缓冲区呢?

比如我们从磁盘里取信息,我们先把读出的数据放在缓冲区,计算机再直接从缓冲区中取数据等缓冲区的数据取完后再去磁盘中读取,这样就可以减少磁盘的读写次数,再加上计算机对缓冲区的操作大大快于对磁盘的操作,故应用缓冲区可大大提高计算机的运行速度。

客户端渲染 和 服务端渲染 的区别

nuxt.js使用vue生命周期created会调用两次接口

重复调用问题:使用了beforeCreated()created(),就会出现调用了两次接口的情况。根据情况改成想要的钩子函数就可以解决问题。


虽然created可能是Vue应用程序的合适钩子,但Nuxt提供了更适合获取数据的附加钩子。如果您只需要在服务器端进行获取,则需要在钩子中用if(process.server)包装调用。