자바웹프로그래밍/HTTP
-
주기적인 client 데이터 전송 Server Sent Event(SSE) 구축하기 with spring boot자바웹프로그래밍/HTTP 2024. 4. 3. 17:26
Contents Server Sent Event(SSE) 가 무엇인가? Server-sent events (SSE) 는 Real time으로 데이터를 클라이언트에 전송할수 있도록 하는 기술이다. SSE는 http 통신이며, long-lived 커넥션 기반으로 서버에서 클라이언트로 데이터를 전송한다. Sse 커넥션 관리 객체 생성 SseEmitters.java @Component @Slf4j public class SseEmitters { private final List emitters = new CopyOnWriteArrayList(); public SseEmitter add(SseEmitter emitter) { this.emitters.add(emitter); log.info("new emitter..
-
면접질문. get 과 post의 차이?자바웹프로그래밍/HTTP 2022. 3. 4. 11:37
*도움이 되셨다면 광고 한번 클릭해주세요! 제게 큰 힘이됩니다! 이번 면접에 볼때 get과 post의 차이에 대해 질문을 하였다. 질문을 듣자 마자. 아차 하였고, 한번도 생각해본적없던 문제였다. 결국 어버버어버버 하여 답변을 제대로 하지못하였다. 정말 가고싶은 회사였는데.. 안타깝네.. 그래도.. 경험이라 생각하고 다음에 저 질문을 받았을때 멋지게 답변하기 위해 get 과 post의 차이점을 정리하고 가볼려고 한다. GET HTTP/1.1 스펙인 GET은 서버로부터 정보를 조회하기 위한 메소드이다. GET은 요청할때 필요한 데이터를 Body에 담지않고, 쿼리스트링을 통해 전송한다. 예제) www.example.com/resources?name1=value1&name2=value2 또한 GET은 불피요한..
-
[#HTTP정리] HTTP는 무엇인가(근본적인)? - 1자바웹프로그래밍/HTTP 2022. 2. 19. 11:40
HTTP (HyperText Transfer Protocol) 텍스트 기반의 통신 규약이며 인터넷에서 데이터를 주고받을 수 있는 프로토콜이다. HTTP는 TCP위의 계층이며, HTTP는 자신의 메세지를 전송하기 위해 TCP를 이용한다. 네트워크 프로토콜 스택 HTTP 애플리케이션 계층 TCP 전송 계층 IP 네트워크 계층 네트워크를 위한 링크 인터페이스 데이터 링크 계층 물리적인 네트워크 하드웨어 물리 계층 # 연결전에 TCP/IP Connection을 먼저 맺어야한다. ★ 웹브라우저 동작 방식 웹 브라우저는 서버의 URL에서 호스트 명을 추출한다. 웹 브라우저는 서버의 호스트 명을 IP로 변환한다. 웹 브라우저는 URL에서 포트번호(있다면) 추출한다. 웹 브라우저는 웹서버와 TCP 커넥션을 맺는다. 웹..
-
flask에서 Cors Error 해결 방법 blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.자바웹프로그래밍/HTTP 2021. 3. 25. 09:55
*도움이 되셨다면 광고 한번 클릭 부탁드립니다! 제게 큰 힘이됩니다! CORS ERROR 원인 Access to XMLHttpRequest at '주소A' from origin '주소B' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. 결론부터 말하자면 처음요청한 web서버에서 html을 받아서 xhr같은 통신 어플리케이션을 통해 다른 출처의 자원을 접근하였을때 에러를 발생시킨다. SOP 한 origin으로부터 로드된 document 또는 script가 다른 origin의 리소스와 상효작용 할 수 있는 방법을 제한하는 중요한 보안 메커니즘 Origin 출처..
-
MIME 타입????자바웹프로그래밍/HTTP 2020. 4. 24. 10:26
MIME 타입이란 클라이언트에게 전송된 문서의 다양성을 알려주기 위해 존재한다. 웹에서 파일들에 확장자는 사실 별의미가 없다. 그러므로, 각 문서와 함계 올바른 MIME 타입을 전송하도록, 서버를 정확히 설정하는것이 매우 중요하다! 각각의 브라우저들은 리소스를 내려받았을때 해야할 기본 동작이 무엇인지를 결정하기 위해 MIME 타입을 사용한다. 웹에서는 MIME 타입만이 가장 적절하므로 조심스럽게 설정되어야한다. 브라우저와 서버들은 일반적인 타입이 제공된 경우에만 MIME타입을 정의하고, 일치하는지 점검하거나 정확한 MIME 타입을 찾기 위해 접미사나 매직 넘버에 근거하는 휴리스틱(발전적 경험)을 사용합니다. 문법 type/subtype MIME 타입의 구조는 매우 간단하다. '/'로 구분된 두 개의 문자..