이미지 올려보자잇
·
nodebird
01. 이미지 보내봅시다... 이미지만 남은거로 보인다 그리고 배포.. 일단 이미지나 기타 동영상 같은거를 백서버에 올릴려면 프론트에서는 Content-Type 속성을 multipart/form-data으로 설정해야한다. 하지만 내가 만든 node 는 현재 app.use(express.json()) app.use(express.urlencoded({ extended: true })) 보는것과 같이 json으로 오는 데이터와 일반 form데이터만 받을수가 있다... ㅠㅠ 이것을 해결하기위해 우리는 일단 npm i multer라는 아이를 설치를 한다. 일단은 multer 같은 경우는 app.js에다가 공통으로 넣어둘수도 있지만 보통 각각의 라우터에 넣는게 일반적이라고 한다. 그 이유는 라우터마다 1개의 이미..
게시물을 불러오장
·
nodebird
말그대로 게시물을 불러올껀데 10개씩 제한을 둬서 불러올꺼다. 일단 문제가 잇을법한 거로 보여줄텐데 router.get("/",async(req,res,next)=>{ try { const posts = await Post.findAll({ limit: 10, offset:10, // DESC 최신순 ASC 오래된순 order:[["creaetedAt","DESC"]] }) res.status(201).send(posts) } catch (error) { console.error(error) next(error) } }) 여기서 limit는 10개씩 offset은 기준점부터 몇개씩 불러오는거고 order는 순서를 뜻한다. 근데 이렇게 가져오면되지 뭔소리야 라고 하는 미래의 나를 위해.... ㅠㅠ offs..
패스포트로그인
·
nodebird
각종 sns로그인 일반로그인등을 한번에 관리해주는 passport login을 이용해 볼꺼다 현역에서는 다른거 쓰겟지만 npm i passport passport-local를 해준다. 여기서 passport-local은 일반 로그인시 사용하는것이다. 다른 sns는 좀있다가.... 01. 세션로그인 이것을 다해줫다 라고 하면 일단 passport라는 폴더를 따로 만들고 설정을 해주는데 const passport = require("passport") const local = require("./local") const {User} = require("../models") module.exports=()=>{ // 로그인 정보를 프론트에서 받음 passport.serializeUser((user,done)=..
cors
·
nodebird
cors 브라우저에서 백엔드에 데이터를 요청할때 아무곳이나 연결이 되면 안되기 때문에 서버의 주소가 다르다고 하면 사전에 미리 브라우저 자체에서 막아 버리는 일종의 보안 방법이다. 처음 cors가 있어서 왜 있는거지 라는 생각이 들면서 (이걸 몰라성...) 백엔드에게 언제 끝나냐 라고 말할때가 있었는데.. 뭐 일단은 cors를 해결하는 방법은 많겠지만 내가아는 방법은 딱 2가지이다. 01. 백엔드에서의 허용 말그대로 백엔드에서 허용을 한다는건데 브라우저에서 차단하는건데 어떻게 백엔드에서 허용을 하냐 라는 개소리말아라 라는 생각을 갖을 수 도 있지만 백엔드에서 브라우저의 주소를 또는 * 로 전체 허용을 해주면 된다. 이게 Access-Control-Allow-Origin 여기다가 브라우저 또는 * 로 전체..
회원가입 구현해보자..
·
nodebird
01. 일단은 분기 부터.. 분기 부터 하는게 코드도 깔끔 내가 보는거도 깔끔하기 때문에 user에 관한거는 user라우터에 분기를 때린다. app.js // 라우터 분기 app.use("/user", userRouter) 그리고 이 분기를 하는곳에다가 코드를 짤껀데 routes/user.js // 회원가입 router.post("/signup", async(req, res) => { await User.create({ email:req.body.email, name: req.body.name, nickName: req.body.nickName, password: req.body.password, }) res.send("ok") }) 이런 식이다 여기에서의 예시로 api주소를 보자면 post("/user..
넥스트에서의 에디터...
·
nodebird
많은 에디터들을 사용하기 위해 노력 해보았다.. 근데 에디터들은 보통 document 객체를 조작해서 동작하더라... 그레서 이런 에러가 나온다... 씨부레.. import dynamic from "next/dynamic"; const ReactQuill = dynamic(() => import("react-quill"), { ssr: false }); 그레서 중요한게 이거 였다. 서버사이드를 클라이언트 사이드로 변경하기 위해 넥스트에서 사용하는 내장 라이브러리라는거 같다.. 이미지 압축이랑 크기 변경때문에 추가적으로 사용해야할꺼같은데... 후....
PGI
'nodebird' 카테고리의 글 목록 (2 Page)