스프린트 25

im-sprint-shortly-mvc part2

1. controllers 디렉토리 생성 models, routes, modules 등의 디렉토리 들과 동일 선상에 controllers 라는 디렉토리를 생성해 주고, 그 디렉토리 안에 links 라는 디렉토리를 하나 더 만들었다. 그리고 links 안에 index.js 파일을 만들어 준다. 2. app.js 서버 통신을 위한 express와 routes 디렉토리 내에 있는 라우팅 파일들을 불러와서 const express = require('express') const indexRouter = require('./routes/index') const linksRouter = require('./routes/links') app.use('/', indexRouter) app.use('/links', li..

im-sprint-auth-session-client

✓ props에 userData 객체가 존재해야 합니다. import React from 'react' import axios from 'axios' const endPoint = 'https://localhost:4000/users/logout' function Mypage(props) { const handleLogout = () => { // TODO: 서버에 로그아웃 요청을 보낸다음 요청이 성공하면 props.logoutHandler를 호출하여 로그인 상태를 업데이트 해야 합니다. // ✓ 로그아웃 버튼이 클릭된 경우, POST `/users/logout` 요청을 보내야합니다. // 로그아웃 요청이 성공한 이후, logoutHandler 함수가 호출되어야 합니다 axios .post(endPoin..

im-sprint-auth-session-server

✓ 인증서 파일이 존재해야 합니다 $ mkcert -install $ mkcert -key-file key.pem -cert-file cert.pem localhost 127.0.0.1 ::1 ✓ 환경 변수에 데이터베이스 비밀번호가 존재해야 합니다. DATABASE_PASSWORD= 비밀번호 DATABASE_PASSWORD= 비밀번호 ✓ 성공적으로 데이터베이스에 연결해야 합니다 npm install --save-dev sequelize-cli npx sequelize-cli init npx sequelize-cli db:migrate ✓ 데이터베이스에 `Users` 테이블이 존재해야 합니다 npx sequelize-cli model:generate --name User --attributes firstN..

im-sprint-shortly-mvc part1

1. Sequelize 설치 https://sequelize.org/ npm install --save sequelize 2. Sequelize CLI 설치 마이그레이션을 할 수 있도록 돕는 툴이고 CLI 에서 모델을 생성해주거나, 스키마 적용을 할 수 있도록 돕는다고 한다. npm install --save-dev sequelize-cli 3. 프로젝트 초기 단계를 자동으로 설정하는 bootstraping npx sequelize-cli init 이 명령어를 통해 아래와 같은 폴더들이 생성된다. config, contains config file, which tells CLI how to connect with database models, contains all models for your proje..

im-sprint-cmarket-database

이번 스프린트에서는 쇼핑몰 애플리케이션 Cmarket의 데이터베이스를 구축합니다. 모든 요청은 반드시 데이터베이스를 이용해야 합니다. controllers/index.js 더보기 const models = require('../models') module.exports = { items: { get: (req, res) => { models.items.get((error, result) => { if (error) { res.status(500).send('Internal Server Error') } else { // GET /items 요청에 성공했을 경우 상태코드 200을 보내야합니다. res.status(200).json(result) } }) }, }, // orders controller에는 ..

im-sprint-learn-sql---part4.js

/* ---------------------------------------------------------------------------------------------- TODO: Q 4-1. user 테이블에 존재하는 모든 컬럼을 포함한 모든 데이터를 확인하기 위한 SQL을 작성해주세요. */ const PART4_1 = `SELECT * FROM user`; /* ---------------------------------------------------------------------------------------------- TODO: Q 4-2. user 테이블에 존재하는 모든 데이터에서 name 컬럼만을 확인하기 위한 SQL을 작성해주세요. */ const PART4_2 = `SELEC..

im-sprint-learn-sql---part3.js

// 유어클래스의 requirement를 참조하여, schema.sql에 알맞은 테이블을 구성해주세요. /* TODO: Q 3-1. 현재 있는 데이터베이스에 존재하는 모든 테이블 정보를 보기위한 SQL을 작성해주세요. */ const PART3_1 = `show databases`; /* TODO: Q 3-2. user 테이블의 구조를 보기위한 SQL을 작성해주세요. - 요구사항에 맞는 user 테이블을 작성해야만, 테스트를 통과합니다. */ const PART3_2 = `DESC user`; /* TODO: Q 3-3. content 테이블의 구조를 보기위한 SQL을 작성해주세요. - 요구사항에 맞는 content 테이블을 작성해야만, 테스트를 통과합니다. */ const PART3_3 = `DESC ..

im-sprint-statesairline-server

Bare minimum requirements "States Airline Server" 스프린트를 통해 Express 프로젝트에서 사용 되는 폴더 구조를 이해하고, Express를 활용하여 API 요청을 처리하는 방법을 실습하게 됩니다. 코드를 작성하면서 폴더 구조가 어떻게 구성이 되어 있고 router ,controller가 어떠한 역할을 수행하는지 관찰해 보세요. 스프린트 목표 Express 프레임워크를 사용하여 States Airline API Server를 개발합니다. Flight API 와 Book API 에서 정의한 API 요청을 수행하는 코드를 작성하세요. flight Router, Book Router 에 있는 모든 테스트를 통과해야 합니다. bookRouter.js 기본 라우팅 라우팅은..