[ノード.jsソース]Chapter 01:フロートサーバ


サーバをexpressで表示する


フォルダ構造を理解する前に、app.jsを作成してサーバコードを生成
const express = require("express");
const app = express();

app.listen(3000, function () {
    console.log("서버 가동");
});
でも、間違いが見つからないので
expressはノードです.jsを含む様々なライブラリとフレームワークはnpmにダウンロードする必要があります
npm install express --svae
// 서버구동
node app.js
では、epxressを呼び出すことにより、expressはローカルPORT 3000を使用してサーバを駆動する.

getを使用してリクエストurlに基づいて応答を送信

// express가 서버에서 get요청으로 /(루트)를 보내면, res=반응 을 한다
app.get("/", (req, res) => {
    //기능
    res.send("여기는 루트입니다.");
});
// express가 서버에서 get요청으로 /login(루트)를 보내면, res=반응 을 한다
app.get("/login", (req, res) => {
    res.send("여기는 로그인 입니다.")
コードにurlリクエストを受信し、矢印関数を使用して機能を追加すればよい.

なぜexpressを使うのですか?httpでもいいですよね?

const http = require("http"); // 내장 모듈이라 다운 없이 가능
const app = http.createServer((req, res) => {
        res.end("여기는 루트입니다");
    } else if (req.url === "/login") {
        res.end("여기는 로그인 화면입니다.")
    }
});

app.listen(3001, () => { // 3000은 있으니 다른걸로 하자
    console.log("http로 가동한 서버입니다")
});
しかし、コードだけでわかるように、きれいではありません.
要求されたurlがどのルートであるかを知る必要があるため,条件文は
サーバがurlを正しく返しても

こんな言葉がある
ルート処理も面倒...
ハングルも処理します.
res.writeHead(200, { 'Content-Type': "text/html; charset=utf-8" }); //정상출력이고(200), 보내는 방법은 html이고, char셋은 utf-8로 해석해달라

正常に出力できるようになりました.