Sungtt

express로 웹서버 만들기 본문

Node

express로 웹서버 만들기

sungtt 2021. 12. 30. 05:34

의도

node를 통해 서버를 만들고, 그 안에서 웹크롤링 및 html을 출력해보기 위함.


node를 설치하고

내가 원하는 디렉토리에 외부모듈 디렉토리가 생기지않아서, 외부모듈을 우선 전역에 설치하였다.

설치한 모듈은 express , axios , chreerio , request , request-promise , voca 이다.

어째서 내가 원하는 디렉토리에 모듈생성이 안되는지?

각 모듈의 역할은 무엇인지?

 

 

npm install express

npm install '모듈명'은 해당 모듈을 현재 디렉토리에 설치하는 것.

 

npm install express -g

install에서 -g라는 옵션을 붙이면 모듈을 전역에 설치하는것,

그러면 모듈이 위치한 디렉토리와 상관없이 사용할 수 있다.

 

supervisor

지정한 소스코드가 수정될 시, 자동으로 서버를 재실행시켜주는 모듈,

설치 후 터미널에서 supervisor 파일명.js 로 실행

처음 실행할 때 error가 났고, 맨 아래 방법을 통해 해결하였다.

html 요소 변경 시에는 굳이 서버를 재실행 하지않아도 반영되었다.

 

axios

?

cheerio

?

 

 

 

 

 

require('모듈명 ')

모듈을 로딩하는 함수.

 

then(' ')

?

 

 

 

 

 

Ctrl + C

터미널에서 실행 시 실행한 서버를 종료하는 단축키.

스크립트를 수정 후 재부팅하지않으면 수정된 코드가 반영되지않았기때문에 찾아보았다.

이 번거로움을 해결할 방법이 없을까하여 찾은것이 위에 서술한 supervisor 이다.

 

Taskkill /IM node.exe /F

터미널에서 이 구문을 실행시키면, Node.js를 통해 실행중인 서버들을 모두 강제종료한다.

 

 

 


supervisor 에러

error message

이 시스템에서 스크립트를 실행할 수 없으므로 C:\~~~~ 파일을 로드할 수 없습니다. 자세한 내용은 about_Execution_Policies(https://go.microsoft.com/fwlink/?LinkID=135170)를 참조
하십시오.
위치 줄:1 문자:1
+ supervisor
+ ~~~~~~~
    + CategoryInfo          : 보안 오류: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

 

1. windows PowerShell 프로그램을 관리자 권한으로 실행

 

2. Get-ExecutionPolicy 명령어를 작성하면 상태확인

 

3. 권한이 RemoteSigned 가 아니라면 Set-ExecutionPolicy RemoteSigned 를 입력

 

4. Get-ExecutionPolicy 명령어로 다시 한번 확인 하면 RemoteSigned로 변경 확인.

 

Comments