\-g와 --save node_modules의 차이\-g는 프로그램을 설치하는 것이고\--save node_modules는 node_modules에 모듈을 다운받는 것이다vue를 설치할 때CMD> npm i @vue/cli -gCMD> vue --versionCMD>
app.js에 라우터를 설정한다▶ 파일명인데 js는 생략한다.indexRouter와 usersRouter는 기본값으로 잇음.그리고 밑에서 이걸 사용하겠다고 선언해줘야함.
/public/routes/viewspublic : 정적 파일을 위한 폴더로서 자바스크립트 파일, 이미지 파일, CSS 등을 포함합니다. 웹URL의 루트폴더로 생각하시면 됩니다. 관리를 쉽게하기 위해 js와 css로 폴더를 구분했습니다. routes : 라우팅을 위
get은 params로 넘기면 됨req에 데이터가 어디에 담겨서 오나 확인해보면 req안에 query: { no: '35' } 이렇게 담겨옴을 확인할 수 있음보낸 데이터를 찍으려면 req.query.no로 접근해야한다.근데 35에 따옴표가 있는 걸 보니 문자로 넘어오는
get 1개 찾기get 여러개 찾기post 글 작성하기put db항목 수정하기(조회수 1올리기)delete 게시글 삭제하기put 게시글 수정하기
get, post, put, delete을 사용할 때 return값 return을 할 때 res.send({status})를 보통 보내는데,status: 200을 보내주고status: 0을 전달해주고status: -1 을 전달한다result: result(백엔드에서 데
에서는 req에 파일이 들어가는 공간이 존재하지 않음. 이 공간을 만들어주기 위해 라이브러리를 하나 다운받아야 한다.
router.get('/prevno', async function(req,res,next){ try{ const no = Number(req.query.cno); // 현재의 no const dbConn = await db.conne
리턴으로 바로 이미지가 나옴image src에 쓰면 이미지가 나타날꺼임
config.js 파일 생성config.js 파일 사용
skip이 생략될 경우어떠한 값을 넣어도 같은 결과를 리턴한다.limit이 생략될 경우다음과 같은 형태로 모든 데이터가 나온다.마지막에 toArray를 반드시 해줘야하는데, toArray를 생략할 경우다음과 같이 나와 데이터를 활용하기 어렵다find를 쓰면 toArra
파일을 여러개 보내야 할 때에는 upload.array("file")을 붙여줘야 한다.single >> array로 바뀜.여기서 핵심은 반복문을 통해서 넣어줘야 한다는 거다.insertMany의 형태는 coll.insertMany({ },{ },{ })이기 때문에
일괄삭제를 해주기 위해서는 {$in : 0,1,2 } 와 같은 형태로 들어가야 한다.기존 {}, {}, {} 의 형태가 아니다.그래서 반복문에서 위의 형태로 만들어서 들어가야 한다.
SQL 문이라고 함 백엔드가 데이터베이스에 이렇게 해주세요 하는게 SQL문이라 함
hash는 못알아보게 다른 문자로 바꾼다는 거임 블록체인에 많이 쓰인다 비밀번호가 같을 경우 hash로 됐는데 같을 수도 있음. 그럴때 양념을 친다 그걸 salt라고 함.salt를 다르게 주면 암호가 같더라도 다르게 나타남
파일을 첨부할 때에는 req에 파일을 넣지 못해서를 가운데 넣어줬었던 것처럼 token도 req에서 검사할 수 없다.그래서 가운데 checkToken의 과정을 거쳐야 한다.여기에는 function을 붙여야함checkToken을 config > auth.js 파일에서 만
ERR_INVALID_ARG_TYPE과 같이 나온다면 타입이 문제다넘버가 아니라 따옴표로 감싸사 string으로 넘겨야 한다.
CMD창에 npm run build을 입력하면digist파일이 만들어진다.digist파일 안에 있는 파일들을 모두 복사해서익스프레스 public폴더 안에 저장해주면 localhost:3000에서 작동함.
다음과 같은 오류가 발생한다.code: 11000으로 id중복이라는 메세지를 프론트엔드에 전달하자
선택 id보다 작은 id 중에 가장 큰것선택 id보다 큰 id 중에 가장 작은것
로그인을 하지 않아도 장바구리를 사용하게 하는 방법보냈을 때 req.headers를 찍어보면x-forwarded-host에 접속한 pc의 정보가 나온다.이를 고유한 정보로 보고 작업한다.
const result = await collection.aggregate([ { $match: { //조건절 user_id: userid // itemCode : 1109 처럼 db에서 바
엔티티에 해당하는 거임
위와 같은 방식으로 넣으면 안들어간다.
https://uhou.tistory.com/102
문자를 HASH하기문자가 들어오면 a => fasd1qw57das6d1w615sa6d4cxz65 1660x347438hex -> 16진수로 바꾸는 거바꾼걸 복원할 수 없다.단방향임 비교하려면 문자를 다시 해쉬화 시켜서 다시 비교한다.
기존 스키마 방식으로 클래스를 만드는 것에서 달라진 점은다음이 추가되었다.기존에 쓰던 방식과 같음.기존의 것과 달라진 점은
특정시간에 프로그램을 동작시키는 것을 스케쥴링이라고 한다.app.js에 등록하기공식사이트https://www.npmjs.com/package/node-cron