Skip to content
Snippets Groups Projects
post.js 1.9 KiB
Newer Older
import express from 'express';
import multer from 'multer';
import path from 'path'

import userService from './data/userService.js';
import articleService from './data/articleService.js';

export const router = express.Router();

const upload = multer({
    storage: multer.diskStorage({ // 저장한공간 정보 : 하드디스크에 저장
        destination(req, file, done) { // 저장 위치
            done(null, 'uploads/'); // uploads라는 폴더 안에 저장
        },
        filename(req, file, done) { // 파일명을 어떤 이름으로 올릴지
            const ext = path.extname(file.originalname); // 파일의 확장자
            done(null, path.basename(file.originalname, ext) + Date.now() + ext); // 파일이름 + 날짜 + 확장자 이름으로 저장
        }
    }),
    limits: { fileSize: 5 * 1024 * 1024 } // 5메가로 용량 제한
  });

router.post("/upload", upload.single("img"), function(req, res, next) {
    console.log("/upload")
    console.log(req.file)
    res.send({
      fileName: req.file.filename
    });
  });

router.post("/upload_temp", async (req, res) => {
	console.log("포스팅 '해줘'");
	if(!req.session.sessionid){
		// 세션이 없엉
	}
	console.log(req.file);
	console.log(req.body)
	const inputTitle = req.body.title
	const inputContent = req.body.content
	const inputImage = req.body.imageUrls
	const useremail = req.session.sessionid.email
	const author = await userService.findUserByEmail(useremail);

  await articleService.createArticle({
		title: inputTitle,
		content: inputContent,
		imageUrls: [],
		author: author,
		comments: [],
		likes: []
	});
  
	console.log('saved.')
	res.send();
});

router.get("/loadarticle", async (req, res) => {
  if(req.session.sessionid){	
	console.log("세션 O")
  }
  else {
	console.log("세션 X")
  }
  const articles = await articleService.findAllArticle();
  res.send(JSON.stringify(articles) );
});

export default router;