import UserService from "services/userService.js" import { R } from "utils/helper.js" import Router from "utils/router.js" class AuthController { constructor() { this.userService = new UserService() } async hello(ctx) { R.ResponseJSON(R.SUCCESS,"Hello World") } async getUser(ctx) { const user = await this.userService.getUserById(ctx.params.id) R.ResponseJSON(R.SUCCESS,user) } async register(ctx) { const { username, email, password } = ctx.request.body const user = await this.userService.register({ username, email, password }) R.ResponseJSON(R.SUCCESS,user) } async login(ctx) { const { username, email, password } = ctx.request.body const result = await this.userService.login({ username, email, password }) R.ResponseJSON(R.SUCCESS,result) } /** * 路由注册 */ static createRoutes() { const controller = new AuthController() const router = new Router({ prefix: "/api" }) router.get("/hello", controller.hello.bind(controller), { auth: false }) router.get("/user/:id", controller.getUser.bind(controller)) router.post("/register", controller.register.bind(controller)) router.post("/login", controller.login.bind(controller)) return router } } export default AuthController