전체 글
-
HTTP 인프런 강의 정리 (4)네트워크 2022. 11. 26. 23:58
모든 개발자를 위한 HTTP 웹 기본지식 HTTP 상태 코드 1. HTTP 상태 코드 소개 상태 코드 : 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 - 1xx (Information) : 요청이 수신되어 처리 중 - 2xx (Successful) : 요청 정상 처리 - 3xx (Redirection) : 요청을 완료하려면 추가 행동이 필요 - 4xx (Client Error) : 클라이언트 오류, 잘못된 문법 등으로 서버가 요청을 수행할 수 없음 - 5xx (Server Error) : 서버 오류, 서버가 정상 요청을 처리하지 못함 Q. 만약 모르는 상태 코드가 나타나면? - 클라이언트가 인식할 수 없는 상태 코드를 서버가 반환하면? > 클라이언트는 상위 상태 코드로 해석해서 처리 > ..
-
HTTP 인프런 강의 정리 (3)네트워크 2022. 11. 24. 20:39
모든 개발자를 위한 HTTP 웹 기본지식 HTTP 메서드 1. HTTP API 만들어보자 좋은 URI? >> 가장 중요한 것은 리소스 식별 - 리소스의 의미는? >> 회원을 등록하고 수정하고 조회하는 것이 리소스가 아니다. >> 예) 미네랄 캐기 : 리소스 = 미네랄 >> 회원이라는 개념 자체가 바로 리소스 - 리소스는 어떻게 식별? >> 회원을 등록하고 수정하고 조회하는 것을 모두 배제 >> 회원이라는 리소스만 식별하면 된다. > 회원 리소스를 URI에 매핑 - 리소스 식별, URI 계층 구조 활용 > 조회, 등록, 수정, 삭제 구분은 어떻게? 리소스와 행위를 분리 > 가장 중요한 것은 리소스를 식별하는 것 - URI는 리소스만 식별 - 리소스와 해당 리소스를 대상으로 하는 행위를 분리 > 리소스: 회..
-
HTTP 인프런 강의 정리 (2)네트워크 2022. 11. 23. 22:02
모든 개발자를 위한 HTTP 웹 기본지식 HTTP 기본 1. 모든 것이 HTTP HTTP (HyperText Transfer Protocol) (HTTP 메시지에 모든 것을 전송) - HTML, TEXT - IMAGE, 음성, 영상, 파일 - JSON, XML (API) - 거의 모든 형태의 데이터 전송 가능 - 서버간에 데이터를 주고받을 때도 대부분 HTTP 사용 - 지금은 HTTP 시대 HTTP 역사 - HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더 x - HTTP/1.0 1996년: 메서드, 헤더 추가 - HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 - HTTP/2 2015년: 성능 개선 - HTTP/3 진행중 : TCP 대신에 UDP 사용, 성능 개..
-
HTTP 인프런 강의 정리 (1)네트워크 2022. 11. 22. 21:29
모든 개발자를 위한 HTTP 웹 기본지식 인터넷 네트워크 1. 인터넷 통신 2. IP(인터넷 프로토콜) "hello, world"라는 메시지 전송 > 최소한의 규칙 필요 > IP 주소 IP 인터넷 프로토콜 역할 - 지정한 IP 주소에 데이터 전달 - 패킷이라는 통신 단위로 데이터 전달 - 패킷? > 패키지(수화물) + 버킷(덩어리) > 택배 박스에 덩어리를 넣어 보내는 것과 비슷 패킷을 만들고 인터넷 망으로 던진다. 패킷에는 출발 / 목적 IP 주소에 대한 정보가 있다. 인터넷망은 IP 규칙을 이해하기 때문에 패킷의 정보를 가지고 노드를 통해 목적지 서버에 도달한다. 서버에서 메세지를 잘 받았다면 똑같은 과정으로 클라이언트에게 전달한다. 인터넷망은 복잡하기 때문에 경로는 서로 다를 수 있다. IP 프로토..
-
세션 로그인 구현 복습프로젝트 2022. 11. 22. 19:32
저번 프로젝트 때는 세션을 활용해 로그인을 구현했었다. 당시에는 서비스를 배포까지 계획이 없었기 때문에 세션으로도 충분했다. 하지만 굉장히 대충 만든 로그인이었고 이번 프로젝트에서는 JWT 방법을 이용하고자 한다. 또한 가능하다면 카카오/구글 등으로도 로그인을 가능하게 구현하는 것이 목표이다. JWT 로그인 구현 방식에 대해 간략하게 찾아보니... 대충 봐도 어려웠다. 이왕 공부하는거 세션 로그인부터 시작해서 총체적으로 정리해야겠다. 저번 프로젝트 때 로그인은 아래와 같은 코드로 구현했다. 1. controller @Controller public class LoginController { private LoginService service; @Autowired public LoginController(..
-
API 와 오픈 API프로젝트 2022. 11. 22. 15:22
새로운 프로젝트를 시작하는데, 다음 할 일은 api 명세서 작성이었다 국비 교육에서의 프로젝트 때는 모든 환경이 동일하게 설정되어 있어서 그랬는지 api, db 등등 모든 환경 설정에 대한 회의가 필요 없었다 api 명세서 작성합시다 > 무슨 말이지? 왜 api 명세가 필요하지 이렇게 되었다 그 과정에서 오픈 api와 또 헷갈리기 시작했고 이번을 기회로 정리하기로 했다. API (Application Programming Interface) 응용프로그램에서 데이터를 주고받기 위한 방법 특정 사이트에서 특정 데이터를 공유할 경우 어떠한 방식으로 정보를 요청하고 받을 수 있는지에 대한 규격 > API 역할 : 1. API는 서버와 데이터베이스에 대한 출입구 역할 2. API는 애플리케이션과 기기가 원활하게 ..
-
오픽노잼 최종 정리취준일기 2022. 11. 12. 21:26
* introduction 은 플러스하게 준비하기 > 좋아하는 거 취미 이런 것에 대해 중점적으로 말하기 * 질문 이해 못했을때 스킵 * 한 가지 메시지를 침묵 없이 말하기 * 메인 포인트까지 오래 걸리지 말기, 바로 메인 포인트를 말하고 시작 * 문법이 틀렸을 때? 그냥 넘어가도 되지만 i mean을 활용해서 자연스럽게 * 99/1 전략 > 한 가지로 99 말하고 반대로 1개 빠르게 말하기 > 말하기의 깊이가 길어짐 * 쉬운 단어 쓰기 * 감정 단어 말할 때, and 사용하지 말기 * 차라리 난이도 높은 거로 선택하고 IH 받을 확률 높이기 * a, b, c, d, e 질문? > 한 가지를 선택해서 focus, 나머지는 1프로 정도만 대답 description > 설명하는 것 : 내 방은 크다 >> 어..
-
DAY5. 오픽 시험 준비하기 with 오픽노잼취준일기 2022. 11. 12. 20:52
IM 시리즈 2 i would like to know where you live. - describe your home. - what does it look like. how many rooms does it have? give me a description with lots of details. 1. ava한테 대답이 필요한 질문하지 말기, 인정하는 듯한 뉘앙스 > oh you wanna know about my place... alrigth, well... 2. 어려운 단어 말고 자신감 있게 사용할 수 있는 쉬운 단어 사용하기 3. 무언가를 묘사하거나 감정 단어 2개를 말할 때, and 사용하지 말기 4. 한가지만 말하기 IM 시리즈 2 what is your normal routine at home..