8-2. 포스트 관련 API 틀 준비하기
포스트 관련 API 는 /api/posts 엔드포인트에 설정을 하도록 하겠습니다.
먼저 posts.controller.js 파일에 요청을 처리하는 함수를 생성만 미리 해보세요.
src/api/posts/posts.controller.js
exports.write = async (ctx) => {
ctx.body = 'write';
};
exports.list = async (ctx) => {
ctx.body = 'list';
};
그 다음엔 posts 의 index.js 파일에서 라우터를 생성하고, 이 컨트롤러 파일을 불러와서 post 메소드와 get 메소드에 각 함수를 연결시키세요.
src/api/posts/index.js
const Router = require('koa-router');
const posts = new Router();
const postsCtrl = require('./posts.controller');
posts.post('/', postsCtrl.write);
posts.get('/', postsCtrl.list);
module.exports = posts;
posts 라우터의 기본적인 틀이 준비되었습니다. 이제 이 라우터를 api 라우터에 연결해봅시다.
src/api/index.js
const Router = require('koa-router');
const api = new Router();
const auth = require('./auth');
const posts = require('./posts');
api.use('/auth', auth.routes());
api.use('/posts', posts.routes());
module.exports = api;
파일을 저장하고 다음 요청들을 테스트 해보세요:
GET http://localhost:4000/api/posts
POST http://localhost:4000/api/posts