jjzjj

javascript - 装饰器在 Nest Controller 中返回 404

我正在使用NestJS开发后端(顺便说一句,这太棒了)。我有一个“标准获取实体情况的单个实例”,类似于下面的示例。@Controller('user')exportclassUserController{constructor(privatereadonlyuserService:UserService){}......@Get(':id')asyncfindOneById(@Param()params):Promise{returnuserService.findOneById(params.id);}这非常简单并且有效-但是,如果用户不存在,服务将返回未定义并且Controller

javascript - nestjs multer 获取 multer 存储后的新文件名列表

我有这个用于上传文件的中间件。@Injectable()exportclassFilesMiddlewareimplementsNestMiddleware{privatestorage=multer.diskStorage({destination:(req,file,cb)=>{cb(null,path.join(__dirname,'../../uploads/'));},filename:(req,file,cb)=>{letextArray=file.mimetype.split("/");letextension=extArray[extArray.length-1];cb

javascript - NestJS + TypeORM : Use two or more databases?

自2天以来我一直在尝试解决这个问题,也许我只是忽略了这里的重点。我的目标是编写一个NestJS应用程序(包含TypeORM),它为我的2个或3个小项目提供RestAPI,而不是为每个项目编写一个NestJS-App。到目前为止一切顺利,该应用程序已准备就绪,可以很好地与单个项目(它们与它们的实体、Controller、服务、模块一起驻留在子文件夹中)配合使用,但我无法让它与所有项目一起运行。重点似乎是配置,我正在使用ormconfig.json:[{"name":"Project1","type":"mysql","host":"localhost","port":3306,"user

javascript - NestJs - 无法在 RolesGuard 中获取用户上下文

我使用NestJS作为客户端API的框架。在该框架内,我们使用的是非常标准的Passport/JWT身份验证基础设施,该基础设施运行良好。当找到不记名token时,我们的AuthGuard将触发,并且在安全的API端点中,我可以通过“@Res()请求”注入(inject)HTTP上下文并访问包含我的Jwttoken有效负载的“request.user”属性.除此之外,我们正尝试以与文档中提供的示例代码和GitHub上的一些示例项目非常相似的方式实现“RolesGuard”(它们都没有真正使用这个守卫,但它们将其作为样本守卫)。我们的问题是我们的AuthGuard触发并验证Jwttoke

javascript - Nest.js - 请求实体太大 PayloadTooLargeError : request entity too large

我正在尝试将JSON保存到Nest.js服务器中,但是当我尝试这样做时服务器崩溃了,这就是我在console.log上看到的问题:[Nest]1976-2018-10-1209:52:04[ExceptionsHandler]请求实体太大PayloadTooLargeError:请求实体太大一件事是JSON请求的大小是1095922字节,有人知道Nest.js中如何增加有效请求的大小吗?谢谢! 最佳答案 您还可以从express导入urlencoded和jsonimport{NestFactory}from'@nestjs/core

javascript - NestJS 在生产中启用 cors

我在theofficialtutorial之后在我的NestJS应用中启用了CORS,所以我的main.ts看起来像下面这样:import{FastifyAdapter,NestFactory}from'@nestjs/core';import{AppModule}from'./app.module';asyncfunctionbootstrap(){constapp=awaitNestFactory.create(AppModule,newFastifyAdapter(),{cors:true});awaitapp.listen(3000);}bootstrap();当我使用npmr

javascript - Nest.js 中的 Socket.io 确认

我正在尝试在Nest.jsWebSocketGateways中启用socket.io确认回调。我希望能够发出这个:socket.emit('event','somedata',function(response){//dosomething})然后像这样使用消息处理程序:@SubscribeMessage('event')onStart(client,data,ack){//Dostuffack('stuffcompleted');}根据thisnestjs/nestGitHubissue问题是库中不支持它,因此您必须构建自己的websocket适配器。我试过了,但不知Prop体怎么做

javascript - 在 Nest.js 中,如何在装饰器中获取服务实例?

在CustomDecorator中,如何访问Nestjs中定义的服务实例?exportconstCustomDecorator=():MethodDecorator=>{return(target:Object,propertyKey:string|symbol,descriptor:PropertyDescriptor)=>{//Here,ispossibiletoaccessaNest.jsservice(i.e.TestService)instance?returndescriptor;}}; 最佳答案 聚会迟到了,但由于我遇

如何使用 NestJS 集成 Passort 和 JWT Token 实现 HTTP 接口的权限管理

💡如果你不希望其他人可以随意进出你的房子,那么你需要给你的房子上个锁。前言开发一个接口很容易,开发一个具有安全性的接口却不容易。成熟的后端服务项目最注重的一点就是如何保护系统的数据安全,不能让用户无脑的访问操作所有的数据,这是不合理更是极度危险的行为。NestJS作为企业级后端开发框架,自然会提供一套权限校验的方案,本文基于NestJS的passort方案,结合jwttoken完成对系统服务的保护。操作步骤💡给你的服务装上防盗锁,只允许有钥匙的人进入。一、安装依赖库首先需要在nestjs项目中安装特定的依赖库npminstall@nestjs/passportpassport@nestjs/j

在 NestJS 中使用 RxJS 进行异步编程

NestJS是一个基于TypeScript的后端框架,它结合了Node.js、Express和其他强大的库,提供了一种优雅的方式来构建可伸缩且模块化的应用程序。在NestJS中,你可以使用RxJS来更有效地处理异步操作和事件驱动的任务。为什么使用RxJS?RxJS提供了一种响应式编程的范式,使得在NestJS中处理异步任务变得更为简单和清晰。它可以用于处理HTTP请求、WebSocket通信、数据库查询等各种异步操作。通过使用RxJS,你可以以一种声明性的方式组织和处理异步任务,从而提高代码的可读性和可维护性。安装RxJS首先,在你的NestJS项目中安装RxJS:npminstallrxjs