λ€νΈμν¬λ₯Ό ν΅ν΄ ν΄λΌμ΄μΈνΈμ μ 보λ μλΉμ€λ₯Ό μ 곡νλ μ»΄ν¨ν° νΉμ νλ‘κ·Έλ¨
=> ν΄λΌμ΄μΈνΈμ μμ²μ λν΄ μλ΅νλ μν
μΉμ¬μ΄νΈμ μ μν λ
λ€μ΄λ²λΌλ μ¬μ΄νΈ urlμ μλ²μ μμ²
=> μλ²λ λ€μ΄λ²λΌλ html μ½λκ° λ΄κΈ΄ κ²°κ³Όκ°μ ν΄λΌμ΄μΈνΈμκ² λ³΄λ
=> ν΄λΌμ΄μΈνΈλ λ€μ΄λ²μ μ μμ μΌλ‘ μ μ
const http = require("http");
http
.createServer((req, res) => {
// writeHead : header κ°μ μΆκ°ν΄μ 보λ΄μ£Όλ κ²
// μλ΅μ λ³΄λΌ λ Header κ°μ ν΅ν΄μ μνμ½λλΌκ³ νλ μ«μ(200)λ₯Ό 보λΈλ€.
// νμ
μ λν΄μλ κ°μ΄ 보λΈλ€.
res.writeHead(200, { "Content-Type": "text/html" });
// 200 : μλ΅μ μ 보λμ λμ μ«μ
// 404 : ν΄λΉ μλ΅μ΄ μ μμ μΌλ‘ μ΄λ£¨μ΄μ§μ§ μμμ μλ―Έ
// typeμ htmlμ 보λ΄κ² λ€κ³ λͺ
μν κ²
res.end("<p>Hello World!</p>");
})
.listen(3000, () => {
console.log("3000λ² ν¬νΈ μλ² μ μ μλ£!");
});
require
: ν΄λΉ ν¨ν€μ§λ₯Ό λΆλ¬μμ μ¬μ©ν μ μκ² ν΄μ€λ€.req
: μμ²λ³΄λΌ λμ μ 보res
: ν΄λΌμ΄μΈνΈμ μλ΅μ λ³΄λΌ λ ν΄λΉ μ½λλ₯Ό ν΅ν΄μ μλ΅μ 보λΈλ€.# μΆλ ₯ κ²°κ³Ό
PS C:κ²½λ‘\js_test\server> node server.js
3000λ² ν¬νΈ μλ² μ μ μλ£!
localhost
localhost
λ μ»΄ν¨ν°μ μ κ·ΌνκΈ° μν μ£Όμlocalhost
= 127.0.0.1
127.0.0.1
= IP(Internet Protocol)localhost
λ₯Ό κ°μ₯ κΈ°λ³Έ μ£Όμλ‘ λκ³ , κΈ°λ₯μ λ°λΌμ ν¬νΈλ²νΈλ‘ μ΄λ₯Ό ꡬλΆ(λΆλ¦¬)μν΄GET
: λ¨μ νμ΄μ§ μ΄λ μμ²POST
: κ²μλ¬Ό μ
λ‘λμ κ°μ κΈ°λ₯ μμ²PUT
: μ
λ°μ΄νΈν λDELETE
: μμ ν λ=> Postmanμ μλ²μ μμ²μ 보λ΄κ³ κ·Έμ λν μλ΅μ λ°μ λ ν΄λΉ κ²°κ³Όκ°μ λ μ½κ² λ°μ μ μλ ν΄
/λΌμ°ν°
λ°©μμΌλ‘ κΈ°μ‘΄ urlλ‘ μ κ·Όμ νλλ°, κ°κ° νΉμ±μ λ§λ urlμ λΆκΈ° μ²λ¦¬const http = require("http");
// urlμ λ§κ² λΆκΈ°μ²λ¦¬ν μλ²
http.createServer((req, res) => {
// reqμ urlμ΄ base url("/")μΌ κ²½μ°
if(req.url === "/") {
// μλ΅μ 보λμ λ μ μ μλμ νλ€λ©΄
// status code : 200
res.writeHead(200);
res.end("main url")
} else if (req.url === "/upload") {
res.writeHead(200);
res.end("upload url");
} else if (req.url === "/delete") {
res.writeHead(200);
res.end("delete url");
} else {
res.writeHead(404);
res.end("Not found!!!");
}
})
.listen(3000, () => {
// listenμ μλ²λ₯Ό λ€ λ§λ€κ³ ν΄λΉ ν¬νΈ(μ¬κΈ°μλ 3000) λ΄μμ λκΈ°
console.log("3000λ² ν¬νΈ μλ² μ μ μλ£!")
});
HTTP response status codes
- νΉμ HTTP μμ²μ΄ μ±κ³΅μ μΌλ‘ μλ£λμλμ§ μ¬λΆλ₯Ό λνλ
- Informational responses (100β199)
- Successful responses (200β299)
- Redirection messages (300β399)
- Client error responses (400β499)
- Server error responses (500β599)