javascript 使用Nest.js提供静态图像

btxsgosb  于 2023-02-21  发布在  Java
关注(0)|答案(1)|浏览(170)

我使用'@nestjs/serve-static'中的ServeStaticModule来提供位于“static”目录中的静态映像。当我尝试访问“localhost:5000/image/[image name]”上的映像时,我收到以下消息:{“状态代码”:404,“消息”:“序号:没有这样的文件或目录,stat '/Desktop/App/server/dist/static/index.html'“}。我遵循官方文档。

import { Module } from '@nestjs/common';
import { FileModule } from './file/file.module';
import { TrackModule } from './track/track.module';
import { MongooseModule } from '@nestjs/mongoose';
import { ServeStaticModule } from '@nestjs/serve-static';
import { resolve } from 'path';

@Module({
imports: [
ServeStaticModule.forRoot({
  rootPath: resolve(__dirname, 'static'),
}),
TrackModule,
FileModule,
],
 })
export class AppModule {}

如何正确地提供静态文件,如图像?

pcrecxhr

pcrecxhr1#

这是我的解决方案:
设置服务静态选项:{index:false}是你的朋友;- D级

// in nest-cli.json
 "sourceRoot": "src",
 "compilerOptions": {
   ...
    "assets": [{ "include": "static/testdata/**/*", "watchAssets": true }]
  }
// in app.module.ts
 ServeStaticModule.forRoot({
      rootPath: join(__dirname, '..', '/static/'),
      serveStaticOptions: { index: false },
    }),

将src/static/testdata中的映像用作
测试数据/图像. png

相关问题