이번 주는 클론 코딩 프로젝트를 진행했다.클론 코딩 프로젝트 모토를 트위터로 설정하고, 기존 트위터 기능을 참고삼아 진행했다.이번 프로젝트 때 특이점이 있었다면, 지금까지 프로젝트는 Javascript와 Express를 사용했었는데, 클론 프로젝트 때는 Typescri
주특기를 배우는 3주간의 시간이 모두 종료되었고, 이번 주에는 4명의 nodejs분들과 백엔드 미니프로젝트를 진행했다. 주제는 기본적인 사이트의 틀을 구현하는 것에 중점을 둔 사이트이다. 프론트엔드랑 연결하는 기회가 없었기 때문에, 백엔드 기능으로만 구현을 해야했고
bcrypt는 비밀번호를 해킹에 노출되지 않도록, Hashing을 하는 알고리즘을 뜻한다. 예를 들어, 웹페이지 유저가 처음에 가입을 했을 때, 사용자가 입력한 ID, Password를 입력한 문자 그대로 서버에 저장을 하면, 해킹에 노출되기 쉽다.
교차 출처 리소스 공유 출처가 다르면 리소스 접근 권한을 부여하도록 browser에서 설정한 정책. 간단히 말하면, 보안 정책이다. 보안 상 cross site 요청은 해킹에 취약한 것으로 보이므로 CORS를 적용하여 보다 안전하게 리소스에 접근해야 한다.
0 - (1). sudo -s 입력 (관리자 권한을 통해서 시작하기 ★★)0 - (2). 컨테이너 확인하고 켜져있으면 중지, 삭제 => docker ps -a => docker stop (컨테이너이름) => docker rm (컨테이너이름)0 - (3). 이미지 확인
1. Docker Images에 mysql 이미지 빌드 (1) 터미널 명령어: docker pull mysql (2) 터미널 명령어: docker images (다운로드한 Docker 이미지 확인) 2. Docker Containers에 mysql 컨테이너 생성 및
현재 userId 1번으로 postId 2번에 좋아요를 누른 상황. 동일한 userId로 postId 1번에 좋아요를 누르고 싶은데, 계속 아래와 같은 오류가 뜬다. postPostId를 찾아주는 메서드가 있는, repositories/likes.js에 가서,
우선 테스팅의 정의를 말해보자면, 작성한 코드들이 멀쩡하게 잘 작동을 하는지 혹은 데이터 관리가 의도대로 잘 이루어지는지를 확인하는 과정이다.그러면 우리는 왜 백엔드 테스팅을 해야 하는가? 바로 아래와 같은 이유들이 있다.사전에 버그나 에러를 감지하는 것이 가장 효율적
SQL 데이터베이스는 SQL (Structured query language)를 사용해 데이터를 정의하고 또 처리한다. SQL은 용도가 많고 또 많이 쓰이기 때문에 매우 매력적인 옵션이다. 복잡한 쿼리들을 처리하기 적합하고 또 리소스도 많고 사용된 시간이 길어 안전하기
Access Token은 사용자의 권한이 확인(ex: 로그인) 되었을 경우 해당 사용자를 인증하는 용도로 발급하게된다. Cookie로 jwt를 발급하고 설정한 Expires 기간이 지날 때 인증이 만료되게 하는것 또한 Acces..
그 동안 우리가 사용했던 MongoDB는 비관계형 데이터베이스(NoSQL)에 해당한다. 그리고 강의에서 사용한 MySQL라는게 바로 관계형 데이터베이스(RDB)이다. > 데이터 형식이 자유로웠던 비관계형 데이터베이스와 달리 관계형
Error: Access denied for user 'board'@'localhost' (using password: YES)vsCode로 서버를 만든 다음에, mysql로 연결하는 과정에서 에러 메시지가 떴음.처음에 Sequelize(user, database, p
REST는 “Representational State Transfer”의 줄임 말로, 최대한 간단하게 설명하자면 URL, Headers, Method 등 네트워크 표현 수단을 사람이 봐도 이해하기 쉬운 표현으로 정의한다고 이해하면 된다.
웹 서버에서 요청을 받을 때 가끔 모든 요청에 대해 공통적인 처리를 하고 싶은 경우가 생길 수 있다. 미들웨어를 통해 웹 서버의 요청/응답에 대해 공통적으로 관리가 가능하다. 예를 들어, 모든 요청에 대해서 로그를 남겨 확인하고 싶은 경우
- 쿠키(Cookie): 브라우저가 서버로부터 응답으로 Set-Cookie 헤더를 받은 경우 해당 데이터를 저장한 뒤 모든 요청에 포함하여 보낸다. - 데이터를 여러 사이트에 공유할 수 있기 때문에 보안에 취약할 수 있다.
node.js 실습 파일을 터미널을 통해 Github에 올리려고 git add . 를 쳤는데, LF will be replaced by CRLF the next time Git touches it 라는 경고 메시지가 떴다.core.autocrlf라는 기능을 켜주면 해결
데이터를 주고 받는 양식을 정의한 "통신 규약"중 하나가 HTTP. (통신 규약: Protocol)매우 범용적인 양식을 가지고 있어 전 세계에서 제일 널리 쓰이는 통신 규약.여기서 말하는 통신 규약이란, 컴퓨터끼리 데이터를 주고 받을때 정해둔 약속을 의미.비유를 하자면
## API > * 애플리케이션끼리 연결해주는 매개체이자 약속. * 사용자들이 쉽게 사용할 수 있는 인터페이스(함수들). * 서버입장에서 API = 클라이언트가 사용할 수 있는 URL 같은 것들. ## API를 작성한다? > - 웹 어플리케이션(프론트엔드)에서
몽고디비 연결 에러 MongooseServerSelectionError: connect ECONNREFUSED ::1:27017 at Connection.openUriNode.js 강의 듣다가 위와 같은 오류가 나왔다.