iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > html >Vue2中SSR如何缓存Api 数据
  • 446
分享到

Vue2中SSR如何缓存Api 数据

2024-04-02 19:04:59 446人浏览 八月长安
摘要

小编给大家分享一下Vue2中SSR如何缓存api 数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体如下:1. 安装缓存依赖

小编给大家分享一下Vue2中SSR如何缓存api 数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

具体如下:

1. 安装缓存依赖: lru-cache

npm install lru-cache --dev

2. api 配置文件

config-server.js

var LRU = require('lru-cache')

let api
if (process.__API__) {
  api = process.__API__
} else {
  api = process.__API__ = {
    api: 'Http://localhost:8080/api/',
    cached: LRU({
      max: 1000,
      maxAge: 1000 * 60 * 15
    }),
    cachedItem: {}
  }
}

module.exports = api

配置下lru-cache

3. 封装下 api

import axiOS from 'axios'
import qs from 'qs'
import md5 from 'md5'
import config from './config-server.js'

export default {
  post(url, data) {
    const key = md5(url + JSON.stringify(data))
    if (config.cached && config.cached.has(key)) {
      return Promise.resolve(config.cached.get(key))
    }
    return axios({
      method: 'post',
      url: config.api + url,
      data: qs.stringify(data),
      // 其他配置
    }).then(res => {
      if (config.cached && data.cache) config.cached.set(key, res)
      return res
    })
  }
}

ajax 库我们用axios, 因为axios在 nodejs 和 浏览器都可以使用

并且将 node 端和浏览器端分开封装

import config from './config-server.js'
const key = md5(url + JSON.stringify(data))

通过 url 和参数, 生成一个唯一的 key

if (config.cached && config.cached.has(key)) {
  return Promise.resolve(config.cached.get(key))
}
if (config.cached && data.cache) config.cached.set(key, res)

判断下是不是开启了缓存, 并且接口指定缓存的话, 将 api 返回的数据, 写入缓存

注意:

这个 api 会处理所有的请求, 但是很多请求其实是不需要缓存的, 所以需要缓存可以在传过来的 data 里, 添加个 cache: true, 如:

api.post('/api/test', {a: 1, b:2, cache: true})

不需要缓存的直接按正常传值即可

以上是“Vue2中SSR如何缓存Api 数据”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网html频道!

--结束END--

本文标题: Vue2中SSR如何缓存Api 数据

本文链接: https://www.lsjlt.com/news/74929.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue2中SSR如何缓存Api 数据
    小编给大家分享一下Vue2中SSR如何缓存Api 数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体如下:1. 安装缓存依赖...
    99+
    2024-04-02
  • 如何解决vue2.x中数据渲染以及vuex缓存的问题
    这篇文章主要介绍如何解决vue2.x中数据渲染以及vuex缓存的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在项目中遇到两个问题,简单的做个笔记来记录自己解决的问题,可能不是很...
    99+
    2024-04-02
  • Javascript如何获取缓存和清除缓存API
    这篇文章给大家分享的是有关Javascript如何获取缓存和清除缓存API的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。JavaScript ServiceWorker API的...
    99+
    2024-04-02
  • ASP中如何优化数组缓存API的性能?
    在ASP应用程序中,数组缓存API是一个非常重要的组件。它可以提供快速、高效的访问数据的能力,同时还可以提高应用程序的性能和可扩展性。然而,如果不加以优化,数组缓存API可能会导致应用程序的性能下降。本文将介绍如何在ASP中优化数组缓存A...
    99+
    2023-06-21
    数组 缓存 api
  • jquery 如何取缓存数据
    在Web开发中, 缓存是提高应用程序性能的一个非常重要的方面。而在jQuery中,框架也提供了一些方便的方法来帮助我们获取缓存数据,这将使我们能够轻松地优化我们的应用程序。接下来,我们将学习如何使用jQuery的缓存方法来获取数据。使用jQ...
    99+
    2023-05-18
  • ASP 缓存和 JavaScript:如何在分布式环境中缓存数据?
    在分布式系统中,缓存数据是一个非常重要的优化手段。ASP 缓存和 JavaScript 缓存是两种常见的缓存方式。本文将介绍如何使用 ASP 缓存和 JavaScript 缓存在分布式环境中缓存数据。 一、ASP 缓存 ASP 缓存是一种...
    99+
    2023-07-10
    缓存 javascript 分布式
  • 如何在PHP中使用数据缓存函数
    在开发Web应用程序时,数据缓存是一项非常重要的技术。数据缓存可以大幅度提升Web应用程序的性能和响应速度,特别是当应用程序需要频繁地读取和写入数据库时。PHP是一种广泛使用的Web开发语言,它提供了许多数据缓存函数,使开发人员能够轻松地实...
    99+
    2023-05-18
    函数 PHP 数据缓存
  • ehcache如何查看缓存数据
    您可以使用以下方法来查看Ehcache中的缓存数据:1. 使用Ehcache的API查看缓存数据:您可以使用Ehcache的`Cac...
    99+
    2023-09-13
    ehcache
  • PHP如何从Redis缓存中获取数据
    要从Redis缓存中获取数据,可以使用PHP的Redis扩展提供的方法。下面是一个简单的示例代码: <php // 连接到Re...
    99+
    2024-05-06
    PHP Redis
  • 如何在Python和Laravel中存储API数据?
    随着互联网和移动应用的普及,API(Application Programming Interface)已经成为了数据交换的重要方式。然而,如何高效地存储API数据成为了一个值得思考的问题。本文将介绍如何在Python和Laravel中存储...
    99+
    2023-08-27
    laravel api 存储
  • ehcache如何缓存大量数据
    使用Ehcache缓存大量数据时,可以考虑以下几点:1. 设置合理的缓存容量:根据应用的实际情况,调整Ehcache的缓存容量,确保...
    99+
    2023-08-26
    ehcache
  • 数据缓存如何在Spring Boot中使用
    数据缓存如何在Spring Boot中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在实际开发中,对于要反复读写的数据,最好的处理方式是将之在内存中缓存一份,频繁的数据...
    99+
    2023-05-31
    springboot 数据缓存
  • 如何使用PHP缓存函数实现实时数据缓存?
    PHP缓存函数是一种将数据存储在内存或磁盘上的技术。该技术可以大大提高应用程序的性能和响应速度,尤其在需要频繁查询数据库的情况下。本文将介绍如何使用PHP缓存函数实现实时数据缓存。 一、什么是缓存? 缓存是将数据存储在内存或磁盘上,以便快速...
    99+
    2023-08-11
    缓存 函数 实时
  • 微信小程序API怎么做数据缓存
    这篇文章主要介绍“微信小程序API怎么做数据缓存”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序API怎么做数据缓存”文章能帮助大家解决问题。每个微信小程序都可以有自己的本地缓存,可以通过w...
    99+
    2023-06-26
  • node.js如何使用redis数据库缓存数据
    这篇文章将为大家详细讲解有关node.js如何使用redis数据库缓存数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、运行redisRedis服务器默认使用6379...
    99+
    2024-04-02
  • 如何将数据写入redis缓存
    要将数据写入 redis 缓存,需要连接到服务器,使用 set 命令设置键值对,并可存储复杂结构。支持设置过期时间,并提供 nx 和 xx 选项处理冲突。同时,也可使用 mset 命令批...
    99+
    2024-04-20
    redis 数据丢失 键值对
  • redis如何读取最新缓存数据
    可以通过多种方法获取 redis 中的最新缓存数据,包括 get(获取单个键)、mget(获取多个键)、scan(迭代所有键)、blpop/brpop(从列表弹出一个元素)和 pub/s...
    99+
    2024-04-20
    redis 键值对
  • Python如何操作Redis缓存数据库
    本篇内容主要讲解“Python如何操作Redis缓存数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python如何操作Redis缓存数据库”吧!今天我们来学习如何使用Python操作Red...
    99+
    2023-06-02
  • Python 如何处理大数据和缓存?
    Python是一种流行的编程语言,它在处理大数据集时非常流行。在本文中,我们将探讨如何使用Python处理大数据集以及如何使用缓存技术来提高Python代码的性能。 一、处理大数据集 处理大数据集时,Python的内置数据结构可能不足以应...
    99+
    2023-11-04
    unix 缓存 大数据
  • 如何使用ASP数组缓存API加速你的网站?
    好的,以下是文章内容: 在开发和维护网站时,优化网站性能是一个非常重要的任务。一个缓慢的网站不仅会影响用户体验,还会降低搜索引擎的排名,从而导致流量减少。 在ASP.NET中,一个常见的性能优化技巧是使用数组缓存API。这个API允许你将一...
    99+
    2023-06-21
    数组 缓存 api
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作