wiki:it:dream_of_enc:metaverse:express
์ฐจ์ด
๋ฌธ์์ ์ ํํ ๋ ํ ์ฌ์ด์ ์ฐจ์ด๋ฅผ ๋ณด์ฌ์ค๋๋ค.
| ์์ชฝ ์ด์ ํ์ด์ ํ | |||
| wiki:it:dream_of_enc:metaverse:express [2025/07/29 06:47] โ syjang0803 | wiki:it:dream_of_enc:metaverse:express [2025/07/30 06:43] (ํ์ฌ) โ ๋ฐ๊นฅ ํธ์ง 127.0.0.1 | ||
|---|---|---|---|
| ์ค 4: | ์ค 4: | ||
| ---- | ---- | ||
| - | ==== 1. Express.js๋ ๋ฌด์์ธ๊ฐ์? | + | ===== 1. Express.js๋ ๋ฌด์์ธ๊ฐ์? |
| '' | '' | ||
| **์ฃผ์ ํน์ง:** | **์ฃผ์ ํน์ง:** | ||
| - | * ์น ์๋ฒ๋ฅผ ๋น ๋ฅด๊ฒ ๋ง๋ค ์ ์์ต๋๋คย | + | * ์น ์๋ฒ๋ฅผ ๋น ๋ฅด๊ฒ ๋ง๋ค ์ ์์ต๋๋ค.ย |
| - | * '' | + | * '' |
| - | * ์ ์ ํ์ผ('' | + | * ์ ์ ํ์ผ('' |
| - | * ๋ฏธ๋ค์จ์ด๋ฅผ ํตํด ๊ธฐ๋ฅ์ ํ์ฅํ ์ ์์ต๋๋ค | + | * ๋ฏธ๋ค์จ์ด๋ฅผ ํตํด ๊ธฐ๋ฅ์ ํ์ฅํ ์ ์์ต๋๋ค. |
| ---- | ---- | ||
| - | ==== 2. ํ๋ก์ ํธ ๊ตฌ์กฐ ์ดํดํ๊ธฐ ==== | + | ===== 2. ํ๋ก์ ํธ ๊ตฌ์กฐ ์ดํดํ๊ธฐ |
| **Express.js ํ๋ก์ ํธ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ:** | **Express.js ํ๋ก์ ํธ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ:** | ||
| ์ค 25: | ์ค 25: | ||
| ---- | ---- | ||
| - | ==== 3. ๊ธฐ๋ณธ ์๋ฒ ์ค์ ==== | + | ===== 3. ๊ธฐ๋ณธ ์๋ฒ ์ค์ |
| - | === 1) ํ์ํ ๋ชจ๋ ๋ถ๋ฌ์ค๊ธฐ === | + | ==== 1) ํ์ํ ๋ชจ๋ ๋ถ๋ฌ์ค๊ธฐ |
| ๋จผ์ ํ์ํ ๋ชจ๋๋ค์ ๋ถ๋ฌ์ต๋๋ค: | ๋จผ์ ํ์ํ ๋ชจ๋๋ค์ ๋ถ๋ฌ์ต๋๋ค: | ||
| - | <code javascript> | + | <file javascript> |
| const express = require(' | const express = require(' | ||
| const path = require(' | const path = require(' | ||
| ์ค 38: | ์ค 38: | ||
| const compression = require(' | const compression = require(' | ||
| const rateLimit = require(' | const rateLimit = require(' | ||
| - | </code> | + | </file> |
| **๊ฐ ๋ชจ๋์ ์ญํ :** | **๊ฐ ๋ชจ๋์ ์ญํ :** | ||
| ์ค 48: | ์ค 48: | ||
| * '' | * '' | ||
| - | === 2) Express ์ฑ ์์ฑ === | + | ==== 2) Express ์ฑ ์์ฑ |
| - | <code javascript> | + | <file javascript> |
| const app = express(); | const app = express(); | ||
| const PORT = process.env.PORT || 3000; | const PORT = process.env.PORT || 3000; | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| ์ค 59: | ์ค 59: | ||
| * '' | * '' | ||
| - | === 3) ๋ณด์ ๋ฏธ๋ค์จ์ด ์ค์ === | + | ==== 3) ๋ณด์ ๋ฏธ๋ค์จ์ด ์ค์ |
| - | <code javascript> | + | <file javascript> |
| app.use(helmet({ | app.use(helmet({ | ||
| contentSecurityPolicy: | contentSecurityPolicy: | ||
| ์ค 73: | ์ค 73: | ||
| } | } | ||
| })); | })); | ||
| - | </code> | + | </file> |
| **์ด ์ค์ ์ ๋ชฉ์ :** | **์ด ์ค์ ์ ๋ชฉ์ :** | ||
| - | * ์น์ฌ์ดํธ ๋ณด์์ ๊ฐํํฉ๋๋คย | + | * ์น์ฌ์ดํธ ๋ณด์์ ๊ฐํํฉ๋๋ค.ย |
| - | * ์ ์ฑ ์คํฌ๋ฆฝํธ ์คํ์ ๋ฐฉ์งํฉ๋๋คย | + | * ์ ์ฑ ์คํฌ๋ฆฝํธ ์คํ์ ๋ฐฉ์งํฉ๋๋ค.ย |
| - | * ํ์ฉ๋ ๋ฆฌ์์ค๋ง ๋ก๋ํ ์ ์๊ฒ ํฉ๋๋ค | + | * ํ์ฉ๋ ๋ฆฌ์์ค๋ง ๋ก๋ํ ์ ์๊ฒ ํฉ๋๋ค. |
| - | === 4) CORS ์ค์ === | + | ==== 4) CORS ์ค์ |
| - | <code javascript> | + | <file javascript> |
| app.use(cors({ | app.use(cors({ | ||
| origin: process.env.NODE_ENV === ' | origin: process.env.NODE_ENV === ' | ||
| ์ค 89: | ์ค 89: | ||
| credentials: | credentials: | ||
| })); | })); | ||
| - | </code> | + | </file> |
| **CORS๋? | **CORS๋? | ||
| - | * ๋ค๋ฅธ ๋๋ฉ์ธ์์์ ์ ๊ทผ์ ์ ์ดํ๋ ๋ณด์ ์ ์ฑ ย | + | * ๋ค๋ฅธ ๋๋ฉ์ธ์์์ ์ ๊ทผ์ ์ ์ดํ๋ ๋ณด์ ์ ์ฑ ์ ๋๋ค.ย |
| - | * ๊ฐ๋ฐ ํ๊ฒฝ์์๋ '' | + | * ๊ฐ๋ฐ ํ๊ฒฝ์์๋ '' |
| - | * ์ด์ ํ๊ฒฝ์์๋ ํน์ ๋๋ฉ์ธ('' | + | * ์ด์ ํ๊ฒฝ์์๋ ํน์ ๋๋ฉ์ธ('' |
| - | === 5) ์์ถ ๋ฐ ์์ฒญ ์ ํ ์ค์ === | + | ==== 5) ์์ถ ๋ฐ ์์ฒญ ์ ํ ์ค์ |
| - | <code javascript> | + | <file javascript> |
| // ์์ถ ๋ฏธ๋ค์จ์ด | // ์์ถ ๋ฏธ๋ค์จ์ด | ||
| app.use(compression()); | app.use(compression()); | ||
| ์ค 109: | ์ค 109: | ||
| }); | }); | ||
| app.use('/ | app.use('/ | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | === 6) ๋ฐ์ดํฐ ํ์ฑ ์ค์ === | + | ==== 6) ๋ฐ์ดํฐ ํ์ฑ ์ค์ |
| - | <code javascript> | + | <file javascript> |
| // JSON ํ์ฑ ๋ฏธ๋ค์จ์ด | // JSON ํ์ฑ ๋ฏธ๋ค์จ์ด | ||
| app.use(express.json({ limit: ' | app.use(express.json({ limit: ' | ||
| app.use(express.urlencoded({ extended: true, limit: ' | app.use(express.urlencoded({ extended: true, limit: ' | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | === 7) ์ ์ ํ์ผ ์๋น ์ค์ === | + | ==== 7) ์ ์ ํ์ผ ์๋น ์ค์ |
| - | <code javascript> | + | <file javascript> |
| // ์ ์ ํ์ผ ์๋น | // ์ ์ ํ์ผ ์๋น | ||
| app.use(express.static(path.join(__dirname, | app.use(express.static(path.join(__dirname, | ||
| ์ค 136: | ์ค 136: | ||
| etag: true | etag: true | ||
| })); | })); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | === 8) ๋ก๊น ๋ฏธ๋ค์จ์ด === | + | ==== 8) ๋ก๊น
๋ฏธ๋ค์จ์ด |
| - | <code javascript> | + | <file javascript> |
| // ๋ก๊น ๋ฏธ๋ค์จ์ด | // ๋ก๊น ๋ฏธ๋ค์จ์ด | ||
| app.use((req, | app.use((req, | ||
| ์ค 151: | ์ค 151: | ||
| next(); | next(); | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * ๋ชจ๋ ์์ฒญ์ ๋ํด ๋ก๊ทธ๋ฅผ ๋จ๊นย | + | * ๋ชจ๋ ์์ฒญ์ ๋ํด ๋ก๊ทธ๋ฅผ ๋จ๊น๋๋ค.ย |
| - | * ์์ฒญ ์๊ฐ, ๋ฐฉ๋ฒ('' | + | * ์์ฒญ ์๊ฐ, ๋ฐฉ๋ฒ('' |
| - | * ๋๋ฒ๊น ์ ๋งค์ฐ ์ ์ฉ | + | * ๋๋ฒ๊น ์ ๋งค์ฐ ์ ์ฉํฉ๋๋ค. |
| ---- | ---- | ||
| - | ==== 4. ๋ผ์ฐํธ ์ค์ ==== | + | ===== 4. ๋ผ์ฐํธ ์ค์ |
| - | === 1) ๋ผ์ฐํธ ํ์ผ ๋ถ๋ฌ์ค๊ธฐ === | + | ==== 1) ๋ผ์ฐํธ ํ์ผ ๋ถ๋ฌ์ค๊ธฐ |
| - | <code javascript> | + | <file javascript> |
| // ๋ผ์ฐํธ ์ค์ | // ๋ผ์ฐํธ ์ค์ | ||
| app.use('/ | app.use('/ | ||
| app.use('/ | app.use('/ | ||
| app.use('/ | app.use('/ | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| ์ค 175: | ์ค 175: | ||
| * ''/ | * ''/ | ||
| - | === 2) ๋ฉ์ธ ํ์ด์ง ๋ผ์ฐํธ === | + | ==== 2) ๋ฉ์ธ ํ์ด์ง ๋ผ์ฐํธ |
| - | <code javascript> | + | <file javascript> |
| // ๋ฉ์ธ ํ์ด์ง | // ๋ฉ์ธ ํ์ด์ง | ||
| app.get('/', | app.get('/', | ||
| res.sendFile(path.join(__dirname, | res.sendFile(path.join(__dirname, | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * ๋ฃจํธ ๊ฒฝ๋ก(''/ | + | * ๋ฃจํธ ๊ฒฝ๋ก(''/ |
| - | * ์น์ฌ์ดํธ์ ์ฒซ ํ์ด์ง | + | * ์น์ฌ์ดํธ์ ์ฒซ ํ์ด์ง์ ๋๋ค. |
| ---- | ---- | ||
| - | ==== 5. ์๋ฌ ์ฒ๋ฆฌ ==== | + | ===== 5. ์๋ฌ ์ฒ๋ฆฌ |
| - | === 1) 404 ์๋ฌ ์ฒ๋ฆฌ === | + | ==== 1) 404 ์๋ฌ ์ฒ๋ฆฌ |
| - | <code javascript> | + | <file javascript> |
| // 404 ์๋ฌ ์ฒ๋ฆฌ | // 404 ์๋ฌ ์ฒ๋ฆฌ | ||
| app.use((req, | app.use((req, | ||
| res.status(404).json({ error: ' | res.status(404).json({ error: ' | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * ์กด์ฌํ์ง ์๋ ํ์ด์ง์ ์ ๊ทผํ ๋ ์คํย | + | * ์กด์ฌํ์ง ์๋ ํ์ด์ง์ ์ ๊ทผํ ๋ ์คํ๋ฉ๋๋ค.ย |
| - | * '' | + | * '' |
| - | === 2) ์๋ฒ ์๋ฌ ์ฒ๋ฆฌ === | + | ==== 2) ์๋ฒ ์๋ฌ ์ฒ๋ฆฌ |
| - | <code javascript> | + | <file javascript> |
| // ์๋ฌ ํธ๋ค๋ง ๋ฏธ๋ค์จ์ด | // ์๋ฌ ํธ๋ค๋ง ๋ฏธ๋ค์จ์ด | ||
| app.use((err, | app.use((err, | ||
| ์ค 212: | ์ค 212: | ||
| res.status(500).json({ error: ' | res.status(500).json({ error: ' | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * ์๋ฒ์์ ๋ฐ์ํ๋ ๋ชจ๋ ์๋ฌ๋ฅผ ์ฒ๋ฆฌย | + | * ์๋ฒ์์ ๋ฐ์ํ๋ ๋ชจ๋ ์๋ฌ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.ย |
| - | * ์๋ฌ ๋ก๊ทธ๋ฅผ ์ฝ์์ ์ถ๋ ฅย | + | * ์๋ฌ ๋ก๊ทธ๋ฅผ ์ฝ์์ ์ถ๋ ฅํฉ๋๋ค.ย |
| - | * ํด๋ผ์ด์ธํธ์๊ฒ๋ ์ผ๋ฐ์ ์ธ ์๋ฌ ๋ฉ์์ง ์ ์ก | + | * ํด๋ผ์ด์ธํธ์๊ฒ๋ ์ผ๋ฐ์ ์ธ ์๋ฌ ๋ฉ์์ง๋ฅผ ์ ์กํฉ๋๋ค. |
| ---- | ---- | ||
| - | ==== 6. ๊ฒ์ ๋ผ์ฐํธ ์์ ==== | + | ===== 6. ๊ฒ์ ๋ผ์ฐํธ ์์ |
| - | === 1) ๊ฒ์ ๋ผ์ฐํธ ๊ธฐ๋ณธ ๊ตฌ์กฐ === | + | ==== 1) ๊ฒ์ ๋ผ์ฐํธ ๊ธฐ๋ณธ ๊ตฌ์กฐ |
| - | <code javascript> | + | <file javascript> |
| const express = require(' | const express = require(' | ||
| const router = express.Router(); | const router = express.Router(); | ||
| const BadukGameController = require(' | const BadukGameController = require(' | ||
| const auth = require(' | const auth = require(' | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| ์ค 236: | ์ค 236: | ||
| * '' | * '' | ||
| - | === 2) ๊ฒ์ ๋ชฉ๋ก ์กฐํ === | + | ==== 2) ๊ฒ์ ๋ชฉ๋ก ์กฐํ |
| - | <code javascript> | + | <file javascript> |
| // ๊ฒ์ ๋ชฉ๋ก ์กฐํ | // ๊ฒ์ ๋ชฉ๋ก ์กฐํ | ||
| router.get('/', | router.get('/', | ||
| ์ค 255: | ์ค 255: | ||
| } | } | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * ์ฑ๊ณต ์ ๊ฒ์ ๋ชฉ๋ก๊ณผ ์ด ๊ฐ์ ๋ฐํย | + | * ์ฑ๊ณต ์ ๊ฒ์ ๋ชฉ๋ก๊ณผ ์ด ๊ฐ์๋ฅผ ๋ฐํํฉ๋๋ค.ย |
| - | * ์คํจ ์ ์๋ฌ ๋ฉ์์ง ๋ฐํ | + | * ์คํจ ์ ์๋ฌ ๋ฉ์์ง๋ฅผ ๋ฐํํฉ๋๋ค. |
| - | === 3) ์ ๊ฒ์ ์์ฑ === | + | ==== 3) ์ ๊ฒ์ ์์ฑ |
| - | <code javascript> | + | <file javascript> |
| // ์ ๊ฒ์ ์์ฑ | // ์ ๊ฒ์ ์์ฑ | ||
| router.post('/', | router.post('/', | ||
| ์ค 283: | ์ค 283: | ||
| } | } | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | === 4) ํน์ ๊ฒ์ ์กฐํ === | + | ==== 4) ํน์ ๊ฒ์ ์กฐํ |
| - | <code javascript> | + | <file javascript> |
| // ํน์ ๊ฒ์ ์กฐํ | // ํน์ ๊ฒ์ ์กฐํ | ||
| router.get('/: | router.get('/: | ||
| ์ค 317: | ์ค 317: | ||
| } | } | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * ๊ฒ์์ด ์์ผ๋ฉด '' | + | * ๊ฒ์์ด ์์ผ๋ฉด '' |
| - | === 5) ๊ฒ์ ์ฐธ๊ฐ === | + | ==== 5) ๊ฒ์ ์ฐธ๊ฐ |
| - | <code javascript> | + | <file javascript> |
| // ๊ฒ์ ์ฐธ๊ฐ | // ๊ฒ์ ์ฐธ๊ฐ | ||
| router.post('/: | router.post('/: | ||
| ์ค 346: | ์ค 346: | ||
| } | } | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | === 6) ๊ฒ์ ์ด๋ ๊ธฐ๋ก === | + | ==== 6) ๊ฒ์ ์ด๋ ๊ธฐ๋ก |
| - | <code javascript> | + | <file javascript> |
| // ๊ฒ์ ์ด๋ ๊ธฐ๋ก | // ๊ฒ์ ์ด๋ ๊ธฐ๋ก | ||
| router.post('/: | router.post('/: | ||
| ์ค 375: | ์ค 375: | ||
| } | } | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| ---- | ---- | ||
| - | ==== 7. ์๋ฒ ์คํ ==== | + | ===== 7. ์๋ฒ ์คํ |
| - | === 1) ์๋ฒ ์์ === | + | ==== 1) ์๋ฒ ์์ |
| - | <code javascript> | + | <file javascript> |
| // ์๋ฒ ์์ | // ์๋ฒ ์์ | ||
| app.listen(PORT, | app.listen(PORT, | ||
| ์ค 393: | ์ค 393: | ||
| console.log(`http:// | console.log(`http:// | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * ์ง์ ๋ ํฌํธ์์ ์๋ฒ๋ฅผ ์์ย | + | * ์ง์ ๋ ํฌํธ์์ ์๋ฒ๋ฅผ ์์ํฉ๋๋ค.ย |
| - | * ์๋ฒ ์์ ์ ์ฝ์์ ๋ฉ์์ง ์ถ๋ ฅ | + | * ์๋ฒ ์์ ์ ์ฝ์์ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํฉ๋๋ค. |
| - | === 2) ๋ชจ๋ ๋ด๋ณด๋ด๊ธฐ === | + | ==== 2) ๋ชจ๋ ๋ด๋ณด๋ด๊ธฐ |
| - | <code javascript> | + | <file javascript> |
| module.exports = app; | module.exports = app; | ||
| - | </code> | + | </file> |
| **์ค๋ช :** | **์ค๋ช :** | ||
| - | * ๋ค๋ฅธ ํ์ผ์์ ์ด ์ฑ์ ์ฌ์ฉํ ์ ์๋๋ก ๋ด๋ณด๋ด๊ธฐย | + | * ๋ค๋ฅธ ํ์ผ์์ ์ด ์ฑ์ ์ฌ์ฉํ ์ ์๋๋ก ๋ด๋ณด๋ ๋๋ค.ย |
| - | * ํ ์คํธ๋ ๋ค๋ฅธ ์๋ฒ์์ ์ฌ์ฉํ ๋ ํ์ | + | * ํ ์คํธ๋ ๋ค๋ฅธ ์๋ฒ์์ ์ฌ์ฉํ ๋ ํ์ํฉ๋๋ค. |
| ---- | ---- | ||
| - | ==== 8. ์ค์ต ์์ ==== | + | ===== 8. ์ค์ต ์์ |
| - | === 1) ๊ฐ๋จํ Express ์๋ฒ ๋ง๋ค๊ธฐ === | + | ==== 1) ๊ฐ๋จํ Express ์๋ฒ ๋ง๋ค๊ธฐ |
| **1๋จ๊ณ: ํ๋ก์ ํธ ์ด๊ธฐํ** | **1๋จ๊ณ: ํ๋ก์ ํธ ์ด๊ธฐํ** | ||
| - | <code bash> | + | <file bash> |
| npm init -y | npm init -y | ||
| npm install express | npm install express | ||
| - | </code> | + | </file> |
| **2๋จ๊ณ: ๊ธฐ๋ณธ ์๋ฒ ํ์ผ ์์ฑ ('' | **2๋จ๊ณ: ๊ธฐ๋ณธ ์๋ฒ ํ์ผ ์์ฑ ('' | ||
| - | <code javascript> | + | <file javascript> |
| const express = require(' | const express = require(' | ||
| const app = express(); | const app = express(); | ||
| ์ค 445: | ์ค 445: | ||
| console.log(`์๋ฒ๊ฐ ํฌํธ ${PORT}์์ ์คํ ์ค์
๋๋ค.`); | console.log(`์๋ฒ๊ฐ ํฌํธ ${PORT}์์ ์คํ ์ค์
๋๋ค.`); | ||
| }); | }); | ||
| - | </code> | + | </file> |
| **3๋จ๊ณ: ์๋ฒ ์คํ** | **3๋จ๊ณ: ์๋ฒ ์คํ** | ||
| - | <code bash> | + | <file bash> |
| node app.js | node app.js | ||
| - | </code> | + | </file> |
| **4๋จ๊ณ: ํ ์คํธ** | **4๋จ๊ณ: ํ ์คํธ** | ||
| ์ค 457: | ์ค 457: | ||
| ---- | ---- | ||
| - | ==== 9. ์ฃผ์์ฌํญ๊ณผ ํ ==== | + | ===== 9. ์ฃผ์์ฌํญ๊ณผ ํ ===== |
| - | === 1) ๋ณด์ ์ฃผ์์ฌํญ ===ย | + | ==== 1) ๋ณด์ ์ฃผ์์ฌํญ |
| - | * ํญ์ '' | + | * ํญ์ '' |
| - | * ๋ฏผ๊ฐํ ์ ๋ณด๋ ํ๊ฒฝ ๋ณ์๋ก ๊ด๋ฆฌํ์ธ์ย | + | * ๋ฏผ๊ฐํ ์ ๋ณด๋ ํ๊ฒฝ ๋ณ์๋ก ๊ด๋ฆฌํ์ธ์.ย |
| - | * ์ ๋ ฅ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ฆํ์ธ์ย | + | * ์ ๋ ฅ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ฆํ์ธ์.ย |
| - | * '' | + | * '' |
| - | === 2) ์ฑ๋ฅ ์ต์ ํ ===ย | + | ==== 2) ์ฑ๋ฅ ์ต์ ํ |
| - | * '' | + | * '' |
| - | * ์ ์ ํ์ผ ์บ์ฑ ์ค์ ย | + | * ์ ์ ํ์ผ ์บ์ฑ์ ์ค์ ํ์ธ์.ย |
| - | * ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ํ ์ฌ์ฉย | + | * ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ํ์ ์ฌ์ฉํ์ธ์.ย |
| - | * ๋ถํ์ํ ๋ฏธ๋ค์จ์ด ์ ๊ฑฐ | + | * ๋ถํ์ํ ๋ฏธ๋ค์จ์ด๋ฅผ ์ ๊ฑฐํ์ธ์. |
| - | === 3) ๋๋ฒ๊น ํ ===ย | + | ==== 3) ๋๋ฒ๊น ํ ====ย |
| - | * ๋ก๊น ๋ฏธ๋ค์จ์ด ์ฌ์ฉย | + | * ๋ก๊น ๋ฏธ๋ค์จ์ด๋ฅผ ์ฌ์ฉํ์ธ์.ย |
| - | * ์๋ฌ ์ฒ๋ฆฌ ๋ฏธ๋ค์จ์ด ์ถ๊ฐย | + | * ์๋ฌ ์ฒ๋ฆฌ ๋ฏธ๋ค์จ์ด๋ฅผ ์ถ๊ฐํ์ธ์.ย |
| - | * ๊ฐ๋ฐ ํ๊ฒฝ์์๋ ์์ธํ ์๋ฌ ๋ฉ์์ง ํ์ย | + | * ๊ฐ๋ฐ ํ๊ฒฝ์์๋ ์์ธํ ์๋ฌ ๋ฉ์์ง๋ฅผ ํ์ํ์ธ์.ย |
| - | * ํ๋ก๋์ ์์๋ ์ผ๋ฐ์ ์ธ ์๋ฌ ๋ฉ์์ง ํ์ | + | * ํ๋ก๋์ ์์๋ ์ผ๋ฐ์ ์ธ ์๋ฌ ๋ฉ์์ง๋ฅผ ํ์ํ์ธ์. |
| ---- | ---- | ||
| - | ==== 10. ๋ค์ ๋จ๊ณ ==== | + | ===== 10. ๋ค์ ๋จ๊ณ |
| '' | '' | ||
| ์ค 494: | ์ค 494: | ||
| --- | --- | ||
| - | //์ด ํ์ด์ง๋ ์๋์ผ๋ก ์์ฑ๋์์ต๋๋ค.// | + | //์ด ํ์ด์ง๋ ์๋์ผ๋ก ์์ฑ๋์์ต๋๋ค.// |
| --- | --- | ||
| + | |||
wiki/it/dream_of_enc/metaverse/express.1753771634.txt.gz ยท ๋ง์ง๋ง์ผ๋ก ์์ ๋จ: ์ ์ syjang0803
