레이블이 nodejs인 게시물을 표시합니다. 모든 게시물 표시
레이블이 nodejs인 게시물을 표시합니다. 모든 게시물 표시

2020년 4월 26일 일요일

Node.js 파해치기


최근에 뭔가를 하려고 하면, Node.js 를 설치하라고 해서 아무 생각 없이 설치만 했었습니다. 이건 뭔가? 새로운 언어인가? 그 기준이 모호한 Node.js 를 파해쳐봤다.

Wiki 기준으로 살펴봤는데 그 내용은 공식 site의 번역 수준이었다.

"이벤트 기반 자바스크립트 런타임이다. 웹 서버와 같이 확장성 있는 네트워크 프로그램 제작을 위해 고안되었다."

그래서 어디에 사용할까?
네트워크 프로그램 작성하는곳에 사용한다고 하는데, 대표적으로 텔레그램, slack 등의 bot 프로그램에 사용합니다.

텔레그램 예제들 - 각종 언어들을 지원하는데 그중에 node.js가 1순위로 있음
https://core.telegram.org/bots/samples

Slack API도 Tag에 제일 많은 순위로 되어 있습니다.
https://api.slack.com/tutorials

그만큼 사용하기 편한건지는 잘모르겠습니다.



저는 python을 좋아해서 python 예제 링크 올려봤습니다.
https://www.fullstackpython.com/blog/build-first-slack-bot-python.html




언어의 예제

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

이건 웹서버 예제입니다.

설치하고 나서 예제를 실행시키는 방법은 node실행파일이 있기 때문에 아래와 같이 합니다.
node app.js


위 내용을 시행 시켜본 상황입니다.
위 예제가 웹서버이므로, 실행결과를 확인하려면 웹 브라우저에서 http://127.0.0.1:3000으로 접속해야 합니다.


javascript runtime이라고 하니 해당 언어에 익숙한 분들이 많이 이용할것 같습니다.
개인적으로 javascript 를 안좋아 해서 ^^;