首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Nest设置两个不同的静态文件夹

Nest是一个流行的基于Node.js的后端框架,用于构建高效、可扩展的Web应用程序。在Nest中,设置多个不同的静态文件夹可以让我们轻松地管理和提供多种类型的静态资源。

要在Nest中设置两个不同的静态文件夹,我们可以通过使用express.static中间件来实现。首先,确保已经安装了@nestjs/serve-static包。

以下是一种完善且全面的答案:

在Nest中设置两个不同的静态文件夹可以通过以下步骤完成:

  1. 首先,安装@nestjs/serve-static包:
代码语言:txt
复制
npm install --save @nestjs/serve-static
  1. 确保你已经创建了两个不同的静态文件夹,并将静态资源放置在这些文件夹中。例如,我们创建了两个文件夹:publicuploads
  2. 在你的Nest应用程序的模块文件(通常是app.module.ts)中导入ServeStaticModule
代码语言:txt
复制
import { Module } from '@nestjs/common';
import { ServeStaticModule } from '@nestjs/serve-static';
import { join } from 'path';

@Module({
  imports: [
    ServeStaticModule.forRoot({
      rootPath: join(__dirname, '..', 'public'), // 第一个静态文件夹路径
      serveRoot: '/public', // 第一个静态文件夹对应的URL路径
    }),
    ServeStaticModule.forRoot({
      rootPath: join(__dirname, '..', 'uploads'), // 第二个静态文件夹路径
      serveRoot: '/uploads', // 第二个静态文件夹对应的URL路径
    }),
  ],
})
export class AppModule {}

在上述代码中,我们使用join方法指定了静态文件夹的路径,serveRoot指定了对应的URL路径。

  1. 现在,当你的Nest应用程序启动时,你可以通过访问/public/uploads来访问这两个静态文件夹中的资源。

至于腾讯云的相关产品和产品介绍链接地址,我无法提供具体链接。但腾讯云作为一家知名的云计算提供商,提供了各种云计算服务,包括虚拟主机、云服务器、对象存储等。你可以通过访问腾讯云的官方网站,了解更多关于他们的云计算产品和相关服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

bat批处理命令根据不同操作系统设置不同电源使用方案

直接下发策略远程关机是可以,但怕有误伤;准备推送策略让电脑休眠,毕竟能省一点是一点吗,接着发现这得每天推送一次脚本,并且遇到加班同事策略就显得呆板了,无法在错过执行时间后继续运行;又考虑了下,想办法更改终端电源方案...40分钟无人使用进入睡眠状态 3、使用powercfg命令更改xp系统电源方案 目的:主要调整电源方案家用/办公桌计划关闭显示器时间和使计算机进入休眠状态时间。...5、使用批处理文件设置不同系统使用不同命令 @echo off ver|find "5.1" if errorlevel 1 goto win7 if errorlevel 0 goto xp :...(5)需要执行命令放在echo 系统名称和goto end中间即可。...6、使用360天擎或者盈高准入推送批处理文件 只要将bat批处理文件推送到对应终端然后执行,这样终端电源计划就被修改了,只要满足条件就会触发。

2.2K10
  • .NET 使用 JustAssembly 比较两个不同版本程序集 API 变化

    最近我大幅度重构了我一个库项目结构,使之使用最新项目文件格式(基于 Microsoft.NET.Sdk)并使用 SourceYard 源码包来打包其中一些公共代码。...不过,最终生成了一个新 dll 之后却心有余悸,不知道我是否删除或者修改了某些 API,是否可能导致我原有库使用者出现意料之外兼容性问题。...索性发现了 JustAssembly 可以帮助我们分析程序集 API 变化。本文将介绍如何使用 JustAssembly 来分析不同版本程序集 API 变化。...本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改后作品务必以相同许可发布。

    32330

    NestJS学习总结篇

    create() 方法返回一个实现 INestApplication 接口对象, 并提供一组可用方法 nest两个支持开箱即用 HTTP 平台:express 和 fastify。...通常,每个控制器有多个路由,不同路由可以执行不同操作 通过NestCLi创建控制器: nest -h 可以看到nest支持命令 常用命令: 创建控制器:nest g co user module...nest g res posts 一键创建以上需要各个模块 配置静态资源 NestJS中配置静态资源目录完整代码 npm i @nestjs/platform-express -S import...app.useStaticAssets('public') //配置静态资源目录 // 使用方式二:配置前缀目录 设置静态资源目录 app.useStaticAssets(join...,如果不传递参数,必须返回一个空对象 } } Cookie使用 cookie和session使用依赖于当前使用平台,如:express和fastify 两种使用方式不同,这里主要记录基于express

    2.3K42

    购买后静态IP代理如何在各个环境下设置使用?(教程)

    使用静态IP代理可以帮助我们在各个环境下访问特定网站或者应用程序,保护我们隐私和安全性。在本文中,我将介绍如何在不同环境下设置静态IP代理。...确认代理服务器 IP 地址和端口号是否正确;4. 测试代理服务器是否生效。四、移动设备设置静态IP代理在移动设备上设置静态IP代理可能会有所不同,具体步骤取决于设备和操作系统。...总结以上是在不同环境下设置静态IP代理步骤,请注意,在设置静态IP代理之前,请确保你已经获得了代理服务器 IP 地址和端口号,并确认它们是正确。...在设置完成后,你可以通过测试代理服务器是否生效来确保代理已经正确设置使用静态IP代理时需要注意哪些地方?...如果你选择代理服务器不可靠,将会导致你网络连接不稳定、网站无法访问等问题,因此,在使用静态IP代理之前,一定要确保你选择代理服务器是可靠

    1.7K20

    Next.jsNuxt.jsNest.jsFastify

    next.js/nuxt.js/nest.jsNext.jsNext.js是一个React框架,允许使用React构建SSR和静态web应用安利下:《next.js静态页面渲染技术(静态生成和服务端渲染...服务引擎盖默认使用Express但也提供与各种其他库兼容性,例如Fastify,允许轻松使用可用无数第三方插件Next.js、Nuxt.js这两个框架重心都在 Web 部分,对 UI 呈现部分代码组织方式...不同是,根据依赖前端框架不同,生成路由配置和实现不同:api 路由:Next.js:在 9.x 版本之后添加了此功能支持,在 pages/api/ 文件夹下(为什么放在pages文件夹下有设计上历史包袱...转化:参数类型转化,或者由原始参数求取二级参数,供 controllers 使用:我们再来简单看下 Nest.js 对不同应用类型和不同 http 提供服务是怎样做适配不同应用类型:Nest.js...不同 http 提供服务则是使用不同适配器,Nest.js 默认内核是 Express,但是官方提供了 FastifyAdapter 适配器用于切换到 Fastify。

    3.1K10

    如何选择正确Node框架:Next, Nuxt, Nest?

    World应用程序 好处 缺点 性能 社区活跃度 Next Next是一个React框架,允许使用React构建SSR和静态web应用 start GitHub Stars: +36,000 npm...lighthouse测试报告中可以看到Preformance、Accessibility、Best Practices、SEO都高于70,虽然比其他两个框架低,但不得不说已经是一个比较好数据,Best...UI渲染,同时抽象出客户端/服务器分布 静态渲染、前后分离 自动代码分层 服务、模板皆可配置 项目结构清晰 组件与页面无缝切换 默认支持得ES6 / ES7 支持开发热更新 路由级别的异步数据获取 支持静态文件服务...服务引擎盖默认使用Express但也提供与各种其他库兼容性,例如Fastify,允许轻松使用可用无数第三方插件 安装 nest提供cli使用该cli命令安装Nest并创建新项目 npm...框架,可以进行严格类型定义 自动生成Swagger文档 Nest文件夹结构主要基于Angular 基于模块框架,代码可复用 项目结构清晰,只需要关注业务无需关注架构 使用最新版本TypeScript

    5.3K20

    使用NestJS搭建服务端应用

    来验证下是否安装成功,如果成功你会看到如下所示输出: image-20220111215750509 接下来,我们创建一个名为nest-project文件夹,在终端进入这个文件夹使用命令:yarn...prod": "node dist/main" } } 添加配置文件 接下来,我们还需要在项目根目录添加nest、eslint、prettier等配置文件,如下所示: .editorconfig统一不同操作系统之间代码格式相关问题配置文件...每个请求会对应一个控制器,一个控制器中可以有多个子方法用于处理同类型不同操作。...在入口处将其设置为全局作用域管道,用于整个应用程序中每个路由处理器。...,我们返回给客户端字段是固定,在本文前面的controller层中,两个方法我们都返回了code、data、msg这三个字段,只是数据不同

    2.1K40

    Nest.js 实践总结分享

    回复1,加入高级Node交流群 Nest.js 是一个现代企业级 Node.js Web 框架,最近在使用 Nest.js 实践一些项目的总结了一些使用心得,也从中学到了很多东西,在这里总结下来和大家分享...API 设置全局前缀 为 API 设置一个全局前缀可以区分接口版本,如通常会用 /api/v1 作为 API 端点前缀。为什么我们需要前缀?好 API 在设计时要考虑到向后兼容性。...模块划分 Nest.js 是以模块化结构为基础,服务端应用应该按功能职责被划分为几个部分,通常情况下,将你目录结构应该按模块划分而不是按类型分成文件夹。...以下是按类型划分文件夹(不推荐): 以下是按模块划分文件夹(推荐): 对于 Nest.js,模块是一个包含 .module.ts 文件文件夹,其中包含一个 @Module({}) 装饰器。...使用集中命名导出 你可以从同一个文件夹中导入所有类,而不是从不同文件中导入你类。如有以下目录: // index.ts export * from '.

    2K10

    Nest.js 实践总结

    Nest.js 是一个现代企业级 Node.js Web 框架,最近在使用 Nest.js 实践一些项目的总结了一些使用心得,也从中学到了很多东西,在这里总结下来和大家分享。 1....API 设置全局前缀 为 API 设置一个全局前缀可以区分接口版本,如通常会用 /api/v1 作为 API 端点前缀。为什么我们需要前缀?好 API 在设计时要考虑到向后兼容性。...模块划分 Nest.js 是以模块化结构为基础,服务端应用应该按功能职责被划分为几个部分,通常情况下,将你目录结构应该按模块划分而不是按类型分成文件夹。...以下是按类型划分文件夹(不推荐): 以下是按模块划分文件夹(推荐): 对于 Nest.js,模块是一个包含 .module.ts 文件文件夹,其中包含一个 @Module({}) 装饰器。...使用集中命名导出 你可以从同一个文件夹中导入所有类,而不是从不同文件中导入你类。如有以下目录: // index.ts export * from '.

    1.8K20

    Nest.js 快速入门:实现对 Mysql 单表 CRUD

    http 请求和 Nest.js 处理请求后端框架我们使用 Nest.js,它提供了 Controller、Service 等划分,这是对 MVC 模式实现。...除此以外,Nest.js 还划分了 Module,这个 Module 是逻辑上模块,和我们常说文件对应模块不同,它包含了 Controller、Service 等,是对这些资源逻辑划分。...@nestjs/typeorm 包提供了 TypeOrmModule 这个 Module,它有两个静态方法 forRoot、forFeature。...此外,Nest.js 提供了 IOC 容器,统一管理对象创建和依赖关系,根据声明来自动注入依赖。 两者结合就是通过 @nestjs/typeorm 包,它有两个静态方法用于生成 Module。...Typeorm 和 Nest.js 结合使用 @nestjs/typeorm 包,它提供了一个 TypeormModule 模块,有 forRoot 和 forFeature 两个静态方法。

    4.1K30

    Nest.js 框架实战之认识与搭建(一)

    旨在成为一个与平台无关框架。 由于平台无关性,我们以创建可重用逻辑组件,开发人员可以跨越多种不同类型应用程序来使用这些组件。...其中src文件夹中包含几个核心文件。...注意:Nest 所有特性都与代码组织模式无关。不同组织模式唯一影响是如何组合项目以及如何生成构建构件,所有其他功能,从 CLI 到核心模块再到附加模块,在任何一种模式下都是相同。 2....nest g library my-library 复制代码 库是在 Monorepo 根目录 libs 文件夹下管理,将会生成如下目录结构,可以看到构建文件与应用程序生成文件略有差异。...,默认时@app,这里为了区分是属于库中模块还是应用程序模块,设置了@libs作为路径别名。

    1.5K21

    Nest.js进阶系列四:Node.js中使用Redis原来这么简单!

    Nest.js系列文章中我们其实留了两个可以用redis优化地方: 一个是我们在做登录时,通过JWT已经实现了服务端生成token以及验证客户端发送token信息。...在Nest.js中使用 版本情况: 库 版本 Nest.js V8.1.2 项目是基于Nest.js 8.x版本,与Nest.js 9.x版本使用有所不同, 后面的文章专门整理了两个版本使用不同说明...:Redis 设置密码 将参数写入.env与.env.prod配置文件中: image.png 使用Nest官方推荐方法,只需要简单3个步骤: 引入依赖文件 npm install cache-manager...,如果是静态数据, 可以使用register 新建redis-cache.service.ts文件, 在service实现缓存读写 import { Injectable, Inject, CACHE_MANAGER...户唯一登录:相同账号,不同电脑登录,先登录用户会被后登录挤下线 token 过期处理 在登录时,将jwt生成token,存入redis,并设置有效期为30分钟。

    2.4K30

    学完这篇 Nest.js 实战,还没入门来锤我!(长文预警)

    这里省略一个漫长等待过程~, 终于看到了它成功了(然后我又删除了,使用yarn,确实速度快了很多) 接下来按照提示运行项目: 这里说一下我安装环境,Nest.js版本不同有些API会有差异 包...这里我们还是照葫芦画瓢,学一下Nest究竟怎么使用。...-S 官方提供了两种连接数据库方法, 这里分别介绍一下: 方法1 首先在项目根目录下创建两个文件.env和.env.prod,分别存是开发环境和线上环境不同环境变量: // 数据库地址 DB_HOST...接着在根目录下创建一个文件夹config(与src同级),然后再创建一个env.ts用于根据不同环境读取相应配置文件。...这里提出两个问题: 为什么不使用 interface 而要使用 class 来声明 CreatePostDto 为什么不直接用之前定义实体类型PostsEntiry,而是又定义一个 CreatePostDto

    13.6K54

    Nest.js 实战 (五):如何实现文件本地上传

    前言最近在开发用户管理模块,需要上传用户头像,正好顺便把文件上传这块功能开发了。为了处理文件上传,Nest 提供了一个内置基于 multer 中间件包 Express 模块。...FileInterceptor() 接收两个参数:fieldName:指向包含文件 HTML 表单字段options:类型为 MulterOptions 。...)uploadFile(@UploadedFiles() files: Array) { console.log(files);}多个文件要上传多个文件(全部使用不同键...: Express.Multer.File[] }) { console.log(files);}新建模块 module 1、 使用生成器创建模块,也可以自己手动创建 nest g resource file-upload...bootstrap() { const app = await NestFactory.create(AppModule); _// 配置文件访问  文件夹静态目录

    10000

    学完这篇 Nest.js 实战,还没入门来锤我!(长文预警)

    这里省略一个漫长等待过程~, 终于看到了它成功了(然后我又删除了,使用yarn,确实速度快了很多) 接下来按照提示运行项目: 这里说一下我安装环境,Nest.js版本不同有些API会有差异 包...这里我们还是照葫芦画瓢,学一下Nest究竟怎么使用。...mysql2 -S 复制代码 官方提供了两种连接数据库方法, 这里分别介绍一下: 方法1 首先在项目根目录下创建两个文件.env和.env.prod,分别存是开发环境和线上环境不同环境变量: /...接着在根目录下创建一个文件夹config(与src同级),然后再创建一个env.ts用于根据不同环境读取相应配置文件。...复制代码 这里提出两个问题: 为什么不使用 interface 而要使用 class 来声明 CreatePostDto 为什么不直接用之前定义实体类型PostsEntiry,而是又定义一个 CreatePostDto

    10K11

    本地使用 Docker Compose 与 Nestjs 快速构建基于 Dapr Redis 发布订阅分布式应用

    Dapr 官网:https://dapr.io/ 实战 Dapr Redis 发布/订阅应用 1. 创建项目 首先,我们将创建我们项目根文件夹来托管我们将在后续步骤中创建所有服务。...创建 NestJS Server 我们将使用 NestJS 作为我们 node server 作为我们 Redis subscriber(订阅者)。...进入到项目文件夹 cd dapr-nestjs-redis-pub-sub 然后执行以下命令设置一个 NestJS node server: npm i -g @nestjs/cli nest new...接下来,我们将设置一个 post API 端点。 Dapr 将调用这个端点,一旦它收到我们 Redis 服务发布,它就被调用。...在这种情况下,我们将使用该 Docker 服务 Dapr sidecar http-port。

    1.3K20

    Nest.js 从零到壹系列(二):数据库连接

    前言 上一篇介绍了如何创建项目、路由访问以及如何创建模块,这篇来讲讲数据库连接与使用。 既然是后端项目,当然要能连上数据库,否则还不如直接写静态页面。...本教程使用是 MySQL,有人可能会问为啥不用 MongoDB。。。呃,因为公司使用 MySQL,我也是结合项目经历写教程,MongoDB 还没踩过坑,所以就不在这误人子弟了。...二、项目的数据库配置 先在项目根目录创建一个文件夹 config(与 src 同级),专门放置各种配置。...productConfig : localConfig; export default config; Ps:这个文件是不同步到 github ,需要各位读者结合实际情况配置 市面上有很多连接数据库工具.../sequelize.org/v5/ ● Nest.js 从零到壹系列(一):项目创建&路由设置&模块● 爬虫养成记--顺藤摸瓜回首掏(女生定制篇)● 前端工程师自我修养-关于 Babel 那些事儿

    3.9K33
    领券