javascript+node.js58 11/13 node 숙련 수업 5 내일배움캠프 오늘 학습 내용 node 숙련 개인 과제 : 입문 과제의 함수를 다시 고치고 sequelize를 통해 mySQL table을 사용해 내용을 띄운다. 알고리즘 시작 : 매일 아침 하루에 두 문제씩 알고리즘 문제를 풀기로 하였다. 개인 과제 mySQL 원격 서버와 연결해 코드를 알맞게 수정하였다. 기능은 갖지만 데이터서버가 달라져 코드가 훨씬 간편해졌다. id도 autoIncrease를 사용하여 1부터 순서대로 올라가게 하였으며 자동으로 만들어주는 createAt과 updatedAt도 출력하였다. 추후에 로그인 기능과 합쳐 로그인에 성공한 유저만 상품을 등록하고 수정할 수 있도록 미들웨어를 작성할 예정이다. 또한 데이터베이스 모델에 작성한 validate가 제대로 작동되지 않아 update, s.. 2023. 11. 13. 11/10 노드 숙련 수업 4 내일배움캠프 오늘 학습 내용 개인 과제 확인 : 회원 가입하여 로그인한 상대에게만 내용을 보여주거나 수정, 삭제할 수 있도록 한다. 해당 작성자가 쓴 상품에게만 권한을 갖는다. JWT을 통한 로그인 컴퓨터 기본 수업 : AWS 복습, 포트포워딩 등을 하는 법 배우기 명세서 작성 프로젝트를 진행하기 전에는 주워진 목표를 처리하기 위해 자세한 명세서를 작성하는 것이 좋다. 따라서 이번에 필요한 url과 method 주어져야 할 req는 무엇이며 성공과 실패 시 res는 무엇이 되어야 하는지에 대한 상세한 api 명세서를 작성했으며 이번에 DB를 효율적으로 쓰기 위해 ERD를 그려 필요한 데이터베이스의 각 테이블을 어떻게 쓸지 미리 구상해보았다. 이를 바탕으로 개발을 진행해보려 한다. 2023. 11. 10. 11/9 노드 숙련 수업 3 내일배움캠프 오늘 학습 내용 Node 숙련 주차 4: MySQL AWS에서 빌려 사용하던 mongoose 대신 sequelize를 이용해 mysql에 연결하여 회원가입과 로그인 페이지를 만들어보았다. ORM & ODM 데이터베이스를 하기에 앞서 용어를 정리해보기로 한다. ORM : Object Relational Mapping 객체와 데이터베이스의 Relation을 연결해주는 도구이다. MySQL을 연결할 때 쓰는 Sequelize가 해당 역할을 한다. Raw Query 형태로 구현하지 않고 model을 객체 형식으로 만들고 DBMS의 종속성을 낮추는 데 도움이 된다. (난 새 함수를 외우는 것보단 쿼리가 더...) ODM : Object Document Mapper NoSQL에서 데이터베이스를 연결할 .. 2023. 11. 9. 11/8 노드 숙련 수업 2 내일배움캠프 오늘 학습 내용 node 숙련 주차 2,3: JWT와 access token, refresh token, 미들웨어에 대해 배우고 로그인과 회원가입을 구현해본다. JWT 우리가 사용하는 json파일을 암호화하여 저장할 수 있다. 내용은 header, payload, signature로 구성되어있으며 hearder에는 어떻게 암호화를 했는지 그 방식이 저장되어있고, payload는 실제로 쓰는 데이터, signature는 검증을 하기 위한 부분이다. 각 내용은 .으로 구분하며 jwt.io에서 암호화된 내용을 복호화해 확인해볼 수 있다. -> 키를 사용하여 복호화하는 것이 아닌 누구나 복호화를 진행할 수 있기에 암호적인 부분은 아니지만 토큰에 들어가있는 값이 바뀌었는지 위변조의 여부를 확인할 수 .. 2023. 11. 8. 11/7 노드 숙련 수업 1 내일배움캠프 오늘 학습 내용 노드 숙련 주차 시작: 1번째 강의 듣고 입문에 했었던 것처럼 프로젝트 기초 구축하기. static 파일 읽기, 쿠키, 세션 zoom 수업: 프로그램 언어의 기초,기계어에서부터 최근 만들어진 고급 언어까지의 특징 설명 쿠키 클라이언트가 서버로부터 응답과 함께 cookie를 받아 저장해두고 앞으로의 서버에 요청할 때마다 같이 자동으로 req 헤더에 포함하여 보내게 된다. 이렇게 해서 서버는 브라우저에서 정보를 받아 파악하고 일일이 똑같은 정보를 요청하지 않아도 된다. 다만 민감한 정보일 경우 그 쿠키를 여러 사이트에 공유할 수 있기 때문에 보안에 취약해진다는 단점이 있다. cookie-parser라는 미들웨어를 통해 req.cookies를 객체로 만들어 더 간편하게 사용할 수 .. 2023. 11. 7. 11/6 노드 입문 수업 4 내일배움캠프 오늘 학습 내용 개인 과제 : DB를 클라우드 서버로 재구축하고 원격 서버컴퓨터에서 실행하여 실제 배포하기 알고리즘 : 프로그래머스를 이용해 알고리즘 문제 풀기 서버 배포 실제 서버를 배포하면서 local에 있는 DB를 쓰면 안된다는 문제점이 생겼다. MySQL은 ID와 비번에 연결하여 해당 DB를 사용할 수 있도록 할 수 있었지만 이번엔 과제 내용에 맞게 Mongo Atlas를 이용하여 연결하였다. 다시 pull을 받아 .env파일도 만들어 실행했는데, 로컬로는 잘 되지만 만들어둔 원격 서버에는 안의 내용이 보이지 않는 문제가 있었는데 mongo atals가 자동으로 IP주소를 차단하였기 때문에 발생한 문제라 엑세스 네트워크에 전에 만든 서버 ip를 추가하여 연결시켰다. 과제에 맞게 url.. 2023. 11. 6. 이전 1 ··· 4 5 6 7 8 9 10 다음