목록Devops (40)
코딩과로그

소켓과 포트의 특징과 차이점 - 소켓 : 프로세스간에 소통을 하기 위한 통구이다. 한 프로세스가 다른 프로세스에 연결을 하려면 포트를 거쳐서 소켓으로 연결이 되어야 한다. - 포트 : 소켓을 연결하기 위한 통로이다. 하나의 프로세스는 하나 이상의 고유한 포트 번호를 가질 수 있어 이를 통해 프로세스를 식별할 수 있고 따라서 통신이 가능해진다. 이해한 내용을 다이어그램을 한번 만들어보았다. 기본적으로 내부 네트워크망을 통했다고 가정했고 라우터는 배제하고 그렸다 node.js 프로세스 - IP : 192.168.100 - PORT : 80 - socket 1 - 192.168.200 / 3000 / socket 1 과 연결됨 - socket 2 - 192.168.300 / 3000 / socket 1 과 연..

리눅스에서 netstat -rn 을 치면 나의 라우팅 테이블 주소를 확인할 수 있습니다. 각 컬럼에 대한 정보 - Destination : 목적지 네트워크의 IP 주소 - Gateway : Next Hop이라고도 불린다. 목적지 네트워크에 해당될 경우 이 Gateway 로 패킷을 전달한다. - Genmask : subnet mask 라고도 불린다. Destination 과 Genmask 값을 통해 네트워크 주소를 확인해 Gateway에 갈 IP인지 확인할 수 있다. - Flags : U = 유효함, G = 게이트웨이 라우터를 의미함, 즉 호스트나 네트워크에 직접 연결된 놈이 아니다. - MSS (Maximum Segment Size) : 최대 세그먼트 크기이며 커널이 이 경로를 통해 전송하기 위해 구성할..

CORS는 왜 필요할까요? 악의적인 사이트로부터의 공격을 방지하는데에 사용됩니다. 공격의 예시 중 하나로 CSRF 공격이 있습니다. Cross-Site Request Forgery 의 약자인데 일단 무슨 말인지는 차치하도록 하고 공격 예시를 통해 보도록 하겠습니다. 예를 들어, www.good-bank.com 이라는 은행 사이트가 있다고 해봅시다. 사용자는 해당 사이트를 통해서 자신의 은행 잔고 정보를 서버에 요청해 확인합니다. 그런데 만약 www.good-bank.com 와 똑같이 생긴 www.bad-bank.com 이라는 사이트가 있다고 해봅시다. 이 사이트는 마치 자신이 good-bank 사이트 인양 속여서 bank api 서버에 정보를 요청해서 얻어올 수 있지 않을까요? 이를 방지할 수 있는 정책..

제가 공부한 것을 단순히 기록(보여주기)하기 위해 작성하였습니다!!!!!!!!! 아래의 요구사항에 대해서 Swagger 의 yaml 형식으로 OpenAPI 명세서를 작성하였습니다. - 조회 블로그 글 전체 조회 특정 블로그 글 조회 모든 댓글 조회 특정 댓글 조회 - 생성 새 블로그 글 생성 새 댓글 생성 - 삭제 특정 블로그 글 삭제 특정 댓글 삭제 - 수정 특정 블로그 글 수정 특정 댓글 수정 작성한 git 레포지토리: https://github.com/SangYunLeee/sprint-open-api-doc/blob/main/openapi.yaml 데이터 모델링과 url-path, statusCode등을 포함하여 작성하였습니다. 스웨거 작성 결과: 이하 작성한 Swagger YAML 입니다. ope..
[C422] 다음 기능에 대한 REST API 모범 사례를 연구해서 제출하세요. 조회 특정 블로그 글에 달린 댓글 조회 기타 (어떤 메소드가 적합한지 고민해보세요!) 블로그 글 좋아요 블로그 글 좋아요 취소 다른 글쓴이 팔로우 1. 특정 블로그 글에 달린 댓글 조회 URL-PATH의 모범 사례 적용: 1. url-path를 동사 대신 명사(자원)로 표현 2. 복수 명사를 사용 GET : /api/articles/{articleId}/comments 이와 더불어, 또한 댓글의 경우, 하나의 블로그 속한 댓글이기 때문에 nested 형식을 사용할 수 있어 /api/article/{articleId}/comments 와 같이 nested 로 적용해 url-path를 설정했다. 성공할 경우, value 라는 키..

REST API : 자원(Resource)을 HTTP URI로 표현하고, HTTP 프로토콜을 통해 요청과 응답을 정의하는 방식 구글에서 지향하는 API Method 방법 중에 익숙치 않았던 부분에 대해서 정리하였습니다. POST : 생성된 자원에 대한 Location response header 를 응답 헤더에 추가하여 자원에 대한 정보를 얻을 수 있도록 하는 것을 권장한다. POST http://api.contoso.com/account1/servers 응답 헤더 201 Created Location: http://api.contoso.com/account1/servers/server321 PATCH : UPSERT semantics 을 지향한다. 즉 없다면 생성하고 있다면 요청값에 대해 변경하는 것인..

[C421] 스크린샷을 보고, HTTP의 구조, 요청과 응답, 헤더 등 유추할 수 있는 내용을 모두 작성하세요. https://toss.im/ URL 로 접속한 뒤 헤더 정보를 획득한 후 결과를 해석하였습니다. General Request URL: https://toss.im/ => 클라이언트는 https://toss.im 주소에 대응되는 리소스를 요청한 것을 알 수 있다. Request Method: GET => 요청은 HTTP Method 중에 GET 을 사용했다. Status Code: 200 OK => 요청이 성공했음을 알 수 있다. Remote Address: 211.115.96.201:443 => 클라이언트의 원격 주소가 211.115.96.201:443 일 것으로 예상된다. 서버로부터 응답받..

쿠키 : 서버에서 클라이언트에 데이터를 저장하는 방법의 하나이다. 또한 서버가 원한다면 서버는 클라이언트에서 쿠키를 이용하여 데이터를 가져올 수 있다. 따라서 쿠키를 이용하는 것은 단순히 서버에서 클라이언트에 쿠키를 전송하는 것만 의미하지 않고 클라이언트에서 서버로 쿠키를 전송하는 것도 포함된다. 쿠키 옵션: 1. 도메인 : 도메인이란 www.google.com 과 같은 서버에 접속할 수 있는 이름이다. 도메인 이름만 포함되고 포트 및 서브 도메인 정보, 세부 경로는 포함하지 않는다. 여기서 서브 도메인은 www 을 의미한다. http://www.localhost.com:3000/users/login 이라는 URL 이 있다면 여기서 도메인은 localhost.com 이다. 2. Path : 서버가 라우팅..