3-5 作业提交
来源:3-5 CLI初试:启动 Nest 应用程序 + 创建控制器

qq_慕的地8145974
2023-09-09
import { Controller, Get, Param } from '@nestjs/common';
import { RangeService } from './range.service';
@Controller('range')
export class RangeController {
constructor(private rangeService: RangeService) {}
@Get(':id')
getRange(@Param('id') id: string): any {
return this.rangeService.getRange(id);
}
}
import { Injectable } from '@nestjs/common';
@Injectable()
export class RangeService {
getRange(num: string): any {
const rangeArr: string[] = [];
const numId = Number(num);
if (!isNaN(numId)) {
if (numId > 0) {
for (let index = 0; index < numId; index++) {
rangeArr.push(Number(index + 1).toString());
}
return {
code: 0,
data: rangeArr,
msg: '操作成功',
};
} else {
return {
code: 1,
data: null,
msg: '请求参数错误',
};
}
} else {
return {
code: 1,
data: null,
msg: '请求参数错误',
};
}
}
}
老师,我有一点不是很明白,如果我把所有异常都放到service文件中的话,都会导致代码复杂且臃肿,这些异常返回我该以什么样的方式管理更为合理呢?
写回答
1回答
-
Brian
2023-09-16
看到你的作业了,下次提交了之后,可以在Q群回复我一声。
在Nestjs中处理错误的方法,除了自己手动进行设置,其实官方有更方便的方式:
https://docs.nestjs.com/exception-filters#throwing-standard-exceptions
最简单的是使用拦截器,看看这一节:https://coding.imooc.com/lesson/617.html#mid=61139
后面都有介绍到。
00