본문 바로가기

서버

[Node.js] 기본 설정

SMALL

node.js를 시작하기 위해 작업할 폴더를 생성하고 VScode로 폴더를 연다

VScode 터미널에서 아래의 명령을 실행한다

 

express-generator 설치 (root 디렉토리)

npm install -g express-generator

 

프로젝트 생성 (root 디렉토리)

아래의 명령으로 새로운 프로젝트를 생성한다

오류발생시 클릭

express 프로젝트명

 

모듈 설치 (프로젝트명 디렉토리)

프로젝트 이름의 디렉토리로 이동한 뒤 아래의 명령을 수행한다

npm install

 

서버 실행 (프로젝트명 디렉토리)

npm start 명령을 이용하여 서버를 실행시킨다

※ VSCode가 연 디렉토리는 package.json이 있는 위치여야 동작한다

npm start

 

 

서버 확인

아래 주소에 접근하여 서버가 정상 동작하는 지 확인한다

http://localhost:3000/

 

Route 설정

routes 디렉토리 내의 파일 중 index.js 파일을 연다

[ 파일 설명

1. index.js
index.js 파일은 주로 메인 라우터 파일로 사용됩니다. 애플리케이션의 기본 라우트 및 중요한 기본 경로를 정의하는 데 사용됩니다. 보통 루트 경로(/)와 관련된 라우트를 처리합니다.

2. user.js
user.js 파일은 사용자 관련 라우트를 정의하는 데 사용됩니다. 사용자 로그인, 회원가입, 사용자 정보 조회 등과 같은 사용자 관련 경로를 처리합니다.]

 

아래와 같이 get과 post 명령을 하나씩 추가하였다

status() 내부의 `200`은 http 코드를 의미하며, 메시지는 json 형태로 전달한다

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'Express' });
});

//get 추가
router.get('/api/get/api-get', function(req, res){
	res.status(200).json({
    	"message" : "get message from nodejs-api get"
        });
 });

//post 추가
 router.post('/api/post/api-post',function(req, res){
	res.status(200).json({
    	"message" : "get message from nodejs-api post"
    });    
});  

module.exports = router;

 

서버 확인

서버에서 router의 확인은 아래의 코드로 할 수 있으며

post 요청은 304 또는 404 오류로 웹페이지에서 확인할 수는 없지만 cmd에서는 확인할 수 있다

http://localhost:3000/api/get/api-get
http://localhost:3000/api/post/api-post

get 요청 (웹페이지)

 

post 요청 (cmd)

 


프로젝트 생성 권한 문제 발생 

"프로젝트 생성 중 이 시스템에서 스크립트를 실행할 수 없으므로 C:\Users\*\AppData\Roaming\npm\express.ps1 파일을 로드할 수 없습니다." 라는 메시지가 발생하는 경우

 

VSCode를 관리자 권한으로 열고 아래의 명령을 사용하면 Restricted라고 출력될 것이다

Get-ExecutionPolicy

 

아래의 방법으로 권한을 조정한 뒤, 다시 express 명령을 사용한다

Set-ExecutionPolicy RemoteSigned
express nodejs_aws

 

권한을 돌리는 방법은 아래와 같다

[참고: 실행 정책을 변경한 후 작업을 마쳤다면, 원래 설정으로 되돌리는 것이 좋습니다.]

Set-ExecutionPolicy Restricted

 

 


출처

https://velog.io/@archivvonjang/Node.js-%EA%B0%84%EB%8B%A8%ED%95%9C-API-%EC%84%9C%EB%B2%84-%EB%A7%8C%EB%93%A4%EA%B8%B0

 

[Node.js] 간단한 API 서버 만들기

1. express-generator 설치 1~5 과정은 command 또는 PowerShell에서 작업한다. Express Application Generator Tool : 사용자가 손쉽게 프로젝트를 생성할 수 있도록 도와주는 웹 애플리케이션 프레임워크 2.

velog.io

 

LIST