在用户服务里面,添加一个可以查询出指定用户的方法,添加一个 async 方法,名字是 show,接收一个 id 参数,值的类型是 string,方法里面添加一个 entity,它的值先用一下 await,执行 this.userRepository 上的 findOne,把 id 交给这个方法。
下面做一个判断,如果没找到 entity,我们就可以 throw 一个异常,异常的类型是 NotFoundException,设置一下异常信息,没找到用户。
一切正常就 return 查询出来的 entity。
然后打开 User 控制器,定义一条路由,支持的 HTTP 方法是 GET,给它一个 :id 参数。下面添加一个处理方法,名字叫 show,支持一个 id 参数,值的类型是 string,这个参数要用 @Param 装饰一下,需要的地址里的 id 参数。
方法里面 return 的就是执行 this.userService 上的 show ,把 id 参数的值交给它。
回到 HTTP 客户端,配置一个请求,请求的方法要设置成 Get,请求的地址是 users/ 后面加上具体的用户的 id 号,请求里面不需要带着主体数据,然后发送一下这个请求。
得到的响应就是对应的用户数据,再试着请求一个不存在的用户,得到的响应状态码是 404,响应的数据里面 message 的值是用户不存在。