일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 스프링
- 러닝GO
- pinia
- Vue
- vue-router
- Git
- GitHub
- 이벤트루프
- Java
- AWS 비용 최적화 바이블
- 1436
- 구글 엔지니어는 이렇게 일한다
- 도메인 주도 개발 시작하기
- 백준
- 2817
- Junit5
- WebTestClient
- 혼공컴운
- 알고리즘
- MySQL
- 한빛미디어
- 이것이자바다
- cicd
- JavaScript
- HTTP
- VueDevTools
- 자바스크립트
- 이것이안드로이드다
- 헤드퍼스트 디자인패턴
- 네트워크
- Today
- Total
목록분류 전체보기 (46)
이시안 개발 블로그
HTTP API 만들어보기 요구사항 회원 정보 관리 API 회원 목록 조회 회원 조회 회원 등록 회원 수정 회원 삭제 API URI 고민 리소스의 의미 회원을 등록, 수정, 조회하는 게 리소스가 아님 회원이라는 개념 자체가 바로 리소스 리소스를 어떻게 식별하는 게 좋을까? 회원을 등록, 수정, 조회하는 것을 모두 배제 회원이라는 리소스만 식별하면 된다. -> 회원 리소스를 URI에 매핑 계층 구조상 상위를 컬렉션으로 보고 복수단어 사용 권장 (member > members) API URI 설계 리소스 식별, URI 계층 구조 활용 역할 좋지 못한 URI 좋은 URI 회원 목록 조회 /read-member-list /members 회원 조회 /read-member-by-id /members/{id} 회원 ..
모든 것이 HTTP HTTP 메시지에 모든 것을 전송할 수 있다. HTML, TEXT IMAGE, 음성, 영상, 파일 JSON, XML (API) 거의 모든 형태의 데이터 전송 가능 서버 간 데이터를 주고 받을 때도 대부분 HTTP 사용 HTTP 역사 HTTP/0.9 (1991년) : GET 메서드만 지원, HTTP 헤더 X HTTP/1.0 (1996년) : 메서드, 헤더 추가 HTTP/1.1 (1997년) : 가장 많이 사용되는 버전 RFC2068 (1997) -> RFC2616 (1999) -> RFC7230~7235 (2014) HTTP/2 (2015년) : 성능 개선 HTTP/3 (진행 중) : TCP 대신 UDP 사용, 성능 개선 기반 프로토콜 TCP : HTTP/1.1, HTTP/2 UDP :..
URI와 웹 브라우저 요청 흐름 URI (Uniform Resource Identifier) URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류될 수 있다 Uniform : 리소스를 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것 (제한 없음) Identifier : 다른 항목과 구분하는 데 필요한 정보 URL과 URN? URL : 리소스가 있는 위치를 지정 URN : 리소스에 이름을 부여 URN은 이름만으로 실제 리소스를 찾는 방법이 보편화 되지 않아 잘 쓰이지 않는다. URL 전체 문법 scheme://[userinfo@]host[:port][/path][?query][#fragment] https://www.google.com:443/sea..
인터넷 네트워크 인터넷 프로토콜 4계층 애플리케이션 계층 - HTTP, FTP 전송 계층 - TCP, UDP 인터넷 계층 - IP 네트워크 인터페이스 계층 IP (인터넷 프로토콜) 지정한 IP 주소(IP Address)에 데이터 전달 패킷(Packet)이라는 통신 단위로 데이터 전달 패킷에는 출발지 IP, 목적지 IP가 필요하다. 인터넷으로 연결된 수많은 노드들을 통해 목적지 IP로 도달하게 된다. 인터넷 망은 복잡하기 때문에 요청과 응답은 서로 다른 경로로 주고 받게될 수도 있다. IP 프로토콜의 한계 비연결성 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송 비신뢰성 여러 이유로 중간에 패킷이 사라질 수도 있음 정보의 순서를 보장할 수 없음 프로그램 구분 같은 IP를 사용하는 서버에서 통신하..
💥 문제발생 프로젝트 진행 중 충돌이 발생했습니다. 충돌한 코드가 많지 않은 경우에는 Resolve Conflict 버튼이 활성화되어서 깃허브 웹 에디터로 충돌을 해결할 수 있지만 제 경우에는 충돌한 코드의 양이 많아서 버튼이 비활성화 되있습니다. ✨ 문제해결 저는 혼자 작업을 할 때는 터미널을 사용하고 팀 작업을 할 때는 소스트리를 사용하고 있습니다. IDE로 충돌 작업을 해결하기 위해서 충돌난 브랜치인 main을 제 브랜치인 test에 먼저 병합을 합니다. 소스트리가 충돌이 났음을 알리며 충돌난 코드, 파일을 확인해 줍니다. IDE에서 > main 부분을 보며 어느 코드를 병합할 지 확인하고 수정을 합니다. 모든 충돌을 해결한 후에 다시 pull request를 날립니다. ☄️ 느낀 점 형상관리는 개..
✨ 왜? 현재 하고있는 프로젝트에서 구현하고 싶었던 기능 중 하나인 auto complete Spring에서 비동기로 데이터를 받아서 보여주는 것을 해보고 싶었습니다. 사용자 입장에서 현재 검색어가 유효한 것인지 아닌지 정보를 전달하는 것이 필요하지 않을까라는 생각이었습니다. Controller @RequestMapping("/search") @RestController public class SearchRestController { @Setter(onMethod_ = @Autowired) private SearchService service; // 검색어 자동완성 @PostMapping( value = "/{word}", produces = "application/text; charset=utf8" /..