Node.js 설치

날아올라돼지야·2024년 9월 23일
0

리눅스 마스터 과정

목록 보기
28/31

1. Node.js 설치

먼저, Ubuntu에 Node.js를 설치하고 간단한 게시판 애플리케이션을 만들어 보겠습니다.

1) Node.js 설치

Node.js를 설치하기 위해서는 apt 패키지 관리자를 사용합니다. 다음 명령어로 Node.js와 npm(Node.js의 패키지 관리자)을 설치할 수 있습니다.

sudo apt update
sudo apt install nodejs npm

설치가 완료되면, Node.js와 npm 버전을 확인하여 설치가 잘 되었는지 확인합니다.

node -v
npm -v

2. 간단한 게시판 애플리케이션 만들기

이 게시판 애플리케이션은 Express.js를 사용하여 REST API로 작동하며, 게시글을 추가하고 조회할 수 있는 기능을 포함합니다. 데이터는 간단히 메모리에 저장되며, 실습용 애플리케이션입니다.

1) 프로젝트 초기화

먼저, Node.js 애플리케이션을 위한 새로운 디렉토리를 만들고, 그 안에서 npm init 명령어를 실행하여 패키지 설정을 초기화합니다.

mkdir nodejs-board
cd nodejs-board
npm init -y

2) 필요한 패키지 설치

이제 Express.js와 Nodemon(개발 중 자동 재시작을 위한 도구)을 설치합니다.

npm install express
npm install --save-dev nodemon

nodemon은 개발 중 서버 코드를 변경할 때마다 자동으로 서버를 재시작해 줍니다.

3) 애플리케이션 파일 생성

app.js 파일을 생성하여 게시판 애플리케이션의 기본 로직을 작성합니다.

touch app.js
nano app.js

app.js 코드 작성

const express = require('express');
const app = express();
const port = 3000;

// 게시글 데이터를 저장할 배열 (메모리 저장 방식)
let posts = [];

// 요청 바디를 JSON 형식으로 파싱
app.use(express.json());

// 게시글 전체 목록 조회
app.get('/posts', (req, res) => {
    res.json(posts);
});

// 새로운 게시글 추가
app.post('/posts', (req, res) => {
    const { title, content } = req.body;
    const newPost = {
        id: posts.length + 1,
        title,
        content,
        createdAt: new Date()
    };
    posts.push(newPost);
    res.status(201).json(newPost);
});

// 특정 게시글 조회
app.get('/posts/:id', (req, res) => {
    const postId = parseInt(req.params.id, 10);
    const post = posts.find(p => p.id === postId);
    if (post) {
        res.json(post);
    } else {
        res.status(404).json({ error: 'Post not found' });
    }
});

// 서버 실행
app.listen(port, () => {
    console.log(`Server is running on http://localhost:${port}`);
});

코드 설명:

  • /posts: 모든 게시글을 조회하는 GET 요청 경로.
  • /posts: 새로운 게시글을 추가하는 POST 요청 경로. 요청 바디에 titlecontent를 JSON 형식으로 전달합니다.
  • /posts/:id: 특정 게시글을 ID로 조회하는 GET 요청 경로.

4) package.json 수정

package.json 파일을 수정하여 nodemon을 사용해 개발 서버를 실행하도록 설정합니다.

"scripts": {
    "start": "node app.js",
    "dev": "nodemon app.js"
}

이제 npm run dev를 실행하면 nodemon을 사용해 서버를 시작할 수 있습니다.

5) 서버 실행

다음 명령어로 서버를 실행합니다.

npm run dev

서버가 성공적으로 실행되면 http://localhost:3000에서 서버가 동작하며, 기본적인 게시판 API가 준비됩니다.


3. 게시판 API 테스트

게시판 API를 테스트하려면 Postman 같은 도구를 사용하거나, curl 명령어를 사용할 수 있습니다.

1) 게시글 추가 (POST 요청)

curl -X POST http://localhost:3000/posts \
-H "Content-Type: application/json" \
-d '{"title": "첫 번째 게시글", "content": "여기는 게시글 내용입니다."}'

2) 게시글 목록 조회 (GET 요청)

curl http://localhost:3000/posts

3) 특정 게시글 조회 (GET 요청)

curl http://localhost:3000/posts/1

4. 요약

  1. Node.js 설치: sudo apt install nodejs npm으로 Node.js 및 npm 설치.
  2. Express.js 설치 및 프로젝트 설정: npm init -y로 프로젝트 초기화 후 express 설치.
  3. 간단한 게시판 애플리케이션: 게시글을 추가하고 조회하는 API 구축.
  4. API 테스트: curl 또는 Postman으로 API 요청을 테스트.

이제 기본적인 게시판 API가 완성되었습니다. 데이터는 메모리에 저장되며, 추후에 데이터베이스를 연동하여 더 확장된 게시판을 만들 수 있습니다.

profile
무슨 생각하며 사니

0개의 댓글

관련 채용 정보