当前位置:首页 > 科技  > 软件

基于Puppeteer实现前端SSR完美接入方案

来源: 责编: 时间:2024-05-20 17:55:07 101观看
导读什么是SSR?SSR 全称是 Server Side Rendering 代表的是服务端渲染。与客户端渲染不同的是,SSR 输出的是⼀个渲染完成的html,整个渲染过程是在服务器端进⾏的。例如传统的ASP、JSP、PHP等都是服务端渲染。优点有利于 SEO,

什么是SSR?

SSR 全称是 Server Side Rendering 代表的是服务端渲染。与客户端渲染不同的是,SSR 输出的是⼀个渲染完成的html,整个渲染过程是在服务器端进⾏的。例如传统的ASP、JSP、PHP等都是服务端渲染。ujZ28资讯网——每日最新资讯28at.com

优点

  • 有利于 SEO,由于页⾯在服务器⽣成,搜索引擎直接抓取到最终页⾯结果。
  • 有利于⾸屏渲染,html 所需要的数据都在服务器处理好,直接⽣成 html,⾸屏渲染时间变短。

缺点

  • 占⽤服务器资源,渲染⼯作都在服务端渲染
  • ⽤户体验不好,每次跳转到新页⾯都需要在重新服务端渲染整个页⾯,不能只渲染可变区域

SSR 主要伪代码

index.htmlujZ28资讯网——每日最新资讯28at.com

<!DOCTYPE html><html><head>    <title>        开源技术小栈    </title>"/></head><body id="PUPPETEER_SSR"><div id="app">    <div class="page-home">        <div class="item-nav">            公众号        </div>    </div></div><script type="text/javascript">    document.querySelector("body>div").innerHTML = "";</script><script src="xxxx.js"></script></body></html>

什么是 CSR?

CSR 全称是 Client Side Rendering 代表的是客户端渲染。顾名思义,就是在渲染⼯作在客户端(浏览器)进⾏,⽽不是在服务器端进⾏。举个例⼦,我们平时⽤vue,react等框架开发的项⽬,都是先下载 html ⽂档(不是最终的完全的 html),然后下载 js 来执⾏渲染出页⾯结果。ujZ28资讯网——每日最新资讯28at.com

优点

  • 前后端分离。前端专注于界⾯开发,后端专注于 api 开发,且前端有更多的选择性,可以使⽤vue,react框架开发,⽽不需要遵循后端特定的模板。
  • 服务器压⼒变轻了,渲染⼯作在客户端进⾏,服务器直接返回不加⼯的html。
  • ⽤户在后续访问操作体验好,(⾸屏渲染慢)可以将⽹站做成 SPA(单页应⽤),可以增量渲染。

缺点

  • 不利于 SEO,因为搜索引擎不执⾏ JS 相关操作,⽆法获取渲染后的最终 html。
  • ⾸屏渲染时间⽐较长,因为需要页⾯执⾏ ajax 获取数据来渲染页⾯,如果请求接⼜多,不利于⾸屏渲染。

CSR 主要伪代码

index.html内容:ujZ28资讯网——每日最新资讯28at.com

<!DOCTYPE html><html><head>    <meta charset=utf-8>    <meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1">    <meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">    <link rel=icon href=/favicon.ico>    <title>        开源技术小栈    </title>    <link rel=stylesheet href=//at.baidu.com/t/12321.css>    <link href=/js/app.7291647f.js rel=preload as=script>    <link href=/js/chunk-elementUI.a450811c.js rel=preload as=script>    <link href=/css/chunk-libs.48206084.css rel=stylesheet>    <link href=/css/app.cc84f854.css rel=stylesheet></head><body><noscript>    <strong>        前后端分离以及前后端框架的落地,基于标准的RESTFUL,制定接口规范和文档        前后端接口授权机制,身份认证和授权策略的拟定    </strong></noscript><script src=/js/runtime.2eb7950f.js></script><script src=/js/app.7291647f.js></script></body></html>

常见的 SSR 解决方案

Next.js 等同类型框架

Next.js 是基于 React 的服务端渲染⼯具。ujZ28资讯网——每日最新资讯28at.com

优点

  • 直观的、 基于页⾯ 的路由系统(并⽀持 动态路由)
  • 预渲染。⽀持在页⾯级的 静态⽣成 (SSG) 和 服务器端渲染 (SSR)
  • ⾃动代码拆分,提升页⾯加载速度
  • 具有经过优化的预取功能的 客户端路由
  • 内置 CSS 和 Sass 的⽀持,并⽀持任何 CSS-in-JS 库
  • 开发环境⽀持 快速刷新
  • 利⽤ Serverless Functions 及 API 路由 构建 API 功能
  • 完全可扩展

Puppeteer 通⽤ SSR 服务端渲染

Puppeteer 是⼀个 Node 库,它提供了⼀个⾼级 API 来通过 DevTools 协议控制 Chromium 或 Chrome。Puppeteer 默认以 headless 模式运⾏,但是可以通过修改配置⽂件 运⾏“有头”模式。ujZ28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-89408-0.html基于Puppeteer实现前端SSR完美接入方案

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 请求合并的三种技巧,性能起飞!

下一篇: 怎么计算我们自己程序的时间复杂度

标签:
  • 热门焦点
  • 鸿蒙OS 4.0公测机型公布:甚至连nova6都支持

    鸿蒙OS 4.0公测机型公布:甚至连nova6都支持

    华为全新的HarmonyOS 4.0操作系统将于今天下午正式登场,官方在发布会之前也已经正式给出了可升级的机型产品,这意味着这些机型会率先支持升级享用。这次的HarmonyOS 4.0支持
  • iPhone卖不动了!苹果股价创年内最大日跌幅:市值一夜蒸发万亿元

    iPhone卖不动了!苹果股价创年内最大日跌幅:市值一夜蒸发万亿元

    8月5日消息,今天凌晨美股三大指数高开低走集体收跌,道指跌0.41%;纳指跌0.36%;标普500指数跌0.52%。热门科技股也都变化极大,其中苹果报181.99美元,跌4.8%,创
  • 不容错过的MSBuild技巧,必备用法详解和实践指南

    不容错过的MSBuild技巧,必备用法详解和实践指南

    一、MSBuild简介MSBuild是一种基于XML的构建引擎,用于在.NET Framework和.NET Core应用程序中自动化构建过程。它是Visual Studio的构建引擎,可在命令行或其他构建工具中使用
  • 微信语音大揭秘:为什么禁止转发?

    微信语音大揭秘:为什么禁止转发?

    大家好,我是你们的小米。今天,我要和大家聊一个有趣的话题:为什么微信语音不可以转发?这是一个我们经常在日常使用中遇到的问题,也是一个让很多人好奇的问题。让我们一起来揭开这
  • 一篇文章带你了解 CSS 属性选择器

    一篇文章带你了解 CSS 属性选择器

    属性选择器对带有指定属性的 HTML 元素设置样式。可以为拥有指定属性的 HTML 元素设置样式,而不仅限于 class 和 id 属性。一、了解属性选择器CSS属性选择器提供了一种简单而
  • Python异步IO编程的进程/线程通信实现

    Python异步IO编程的进程/线程通信实现

    这篇文章再讲3种方式,同时讲4中进程间通信的方式一、 Python 中线程间通信的实现方式共享变量共享变量是多个线程可以共同访问的变量。在Python中,可以使用threading模块中的L
  • 新电商三兄弟,“抖快红”成团!

    新电商三兄弟,“抖快红”成团!

    来源:价值研究所作 者:Hernanderz 随着内容电商的概念兴起,抖音、快手、小红书组成的&ldquo;新电商三兄弟&rdquo;成为业内一股不可忽视的势力,给阿里、京东、拼多多带去了巨大压
  • 当家的盒马,加速谋生

    当家的盒马,加速谋生

    来源 | 价值星球Planet作者 | 归去来自己&ldquo;当家&rdquo;的盒马,开始加速谋生了。据盒马官微消息,盒马计划今年开放生鲜供应链,将其生鲜商品送往食堂。目前,盒马在上海已经与
  •  首发天玑9200+ iQOO Neo8系列发布首销售价2299元起

    首发天玑9200+ iQOO Neo8系列发布首销售价2299元起

    2023年5月23日晚,iQOO Neo8系列正式发布。其中,Neo系列首款Pro之作——iQOO Neo8 Pro强悍登场,限时售价3099元起;价位段最强性能手机iQOO Neo8同期上市
Top