Retrospect 119

[TIL] 2020-10-21

💪 Today I Learned 로그인 인증 및 유지 방법 Cookie / Session Cookie : 클라이언트의 저장소 중 하나 Session : 서버의 저장소 session ID 사용 시 API 요청할 때마다 아이디와 패스워드를 함께 보내지 않아도 되는 1차원적인 해결한다. 하지만 서버에서 관리해줘야 할 것이 늘어나 서버 부하의 문제가 있다. JWT (Jason Web Token) Header : meta-data Payload : real data (중요 정보 제외) Signature : Header, Payload, Secret key를 묶어 암호화 서버 부하를 해결했으나 토큰이 탈취될 경우 보안상의 문제가 있다. 이것은 payload에 유효기간을 설정해 해커가 탈취할 수 있는 시간을 한정적으..

[TIL] 2020-10-20

💪 Today I Learned Brunch API 설계 18개 정도 설계해봤는데 아쉬움 투성이다. 못해도 25개 정도는 만들 수 있을거라 생각했지만 하나하나 쿼리문을 다시 작성하는 데 너무 오래 걸렸다. 저번주에 작성해둔 한 방 쿼리가 무용지물이라고 생각이 들 정도로 쿼리에 문제가 많았다. 사실 쿼리 문제라기보다는 테이블들이 마음에 안들었다. ERD 설계를 더 계획적으로 했어야 하지 않나 싶다. 🏃‍♂️ 한마디 내일 수업 때 피드백 받고 다시 보완해야지.

[TIL] 2020-10-19

💪 Today I Learned MySQL connection locked 현상 과제 수행 도중 Postman에서 계속 서버 에러가 뜨며 아래 메시지를 날렸다. ERROR 1129(00000): Host 'xxx' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts' 구글링해보니 MySQL 은 외부에서 비정상적인 접속이라 판단되는 경우 해당 호스트를 블락시킨다고 한다. 이렇게 비정상 접속이라고 판단되는 케이스는 단순 Connect 후 Disconnet하는 연결이 빈번하거나 접근 계정의 패스워드가 계속해서 불일치하는 경우 혹은 기타 사이버 공격으로 의심되는 케이스 라고 한다. 여러 해결법이 있었는데, 나는 그냥..

[TIL] 2020-10-18

💪 Today I Learned Brunch API 설계 GET /users/{user-idx} GET /users/{user-idx}/intro GET /users/{user-idx}/career GET /users/{user-idx}/post-list GET /users/{user-idx}/category-list 우선은 사용자 페이지 위주로 API를 설계하기 시작했다. 사실 브런치 어플은 웹과 다르게 카카오 계정으로 로그인만 허용해놨다. 그래서 회원가입 API는 일단 뒷전으로 미루고 GET을 통해 조회하는 API들에 집중했다. 🏃‍♂️ 한마디 지금은 전부 path variable로 처리했는데 옳은 방법인지 잘 모르겠다. query string으로 넘겼을 때와 어떤 차이가 있는지 더 알아봐야겠다.

[TIL] 2020-10-17

💪 Today I Learned 서버 재구축 Server program : nginx 어제 AWS 계정을 새로 만든 탓에 서버를 다시 구축했다. phpmyadmin 외부 접속 시키는 것에 반나절을 투자했다. 원래 저번주 과제 때 처리해줬으면 수월하게 했을텐데 처음하는 것이라 오래 걸렸던 것 같다. 사실 경로를 잘못 알아 계속 다른 파일만 수정하고 있었다. cd /etc/phpmyadmin # phpmyadmin configuration file sudo vi config.inc.php 🏃‍♂️ 한마디 심지어 API 하나 설계하는 데에도 엄청난 시간을 쏟았다. 하나의 API에서 여러 개의 쿼리를 받아오고 싶은데 도무지 결과값 반환이 되지 않았다. 구글링 해보면 mysqli_multi_query 얘기만 가득..