Page 557 - Nodejs 교과서 개정2판
P. 557
۽ં ݃ޖܻೞӝ
݄݃ਵ۽ (*' ܳ ࣠ೞח Ѫਸ ҳഅ೧ࠇद ۠ ചݶীࢲ ܳ ࢶఖ೧ স۽٘ೞח ߮ ܻ
झցܳ ୶оפ
views/chat.html
<script>
...
document.querySelector('#chat-form').addEventListener('submit', function (e) {
...
});
document.querySelector('#gif').addEventListener('change', function (e) {
console.log(e.target.files);
const formData = new FormData();
formData.append('gif', e.target.files[0]);
axios.post('/room/{{room._id}}/gif', formData)
.then(() => {
e.target.file = null;
})
.catch((err) => {
console.error(err);
});
});
</script>
POST /room/{{room._id}}/gif ࣗী ࢚ೞח ۄఠܳ ࢿפ
routes/index.js
const express = require('express');
const multer = require('multer');
const path = require('path');
const fs = require('fs');
...
try {
fs.readdirSync('uploads');
} catch (err) {
console.error('uploads 폴더가 없어 uploads 폴더를 생성합니다.');
fs.mkdirSync('uploads');
}
const upload = multer({
storage: multer.diskStorage({