일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- fixedDelay
- 자바ORM표준프로그래밍
- Git
- DB방언
- gitrevert
- @Entity
- JPA
- 김영한JPA
- anyMatch
- hibernate.dialect
- @Table
- SpringBoot
- 네이버로그인API
- RFC723x
- HTTPMESSAGE
- 캐쉬가능
- 네이버 연결된 서비스
- initialDelay
- KAKAOLOGINAPI
- Invalid bound statement (not found)
- HTTP3
- ERROR TYPE : org.apache.ibatis.binding.BindingException
- 멱등활용
- 무상태프로토콜
- Transaction not successfully started
- gitreset
- org.apache.ibatis.binding.BindingException
- http
- 매핑정보가없는필드
- 데이터베이스 방언
- Today
- Total
목록IT/HTTP (34)
twocowsong
From 유저 에이전트의 이메일 정보 일반적으로 잘 사용하지않으며 검색 엔진 같은 곳에서, 주로 사용합니다. Referer 이전 웹 페이지 주소 현재 요청된 페이지의 이전 웹 페이지 주소 , A -> B로 이동하는 경우 B를 요청할 때 Referer: A 를 포함해서 요청. Referer를 사용해서 유입 경로 분석이 가능합니다. User-Agent 유저 에이전트 애플리케이션 정보 클라이언트의 애플리케이션 정보 ( 웹 브라우저 정보, 등등) , 어떤 종류의 브라우저에서 장애가 발생하는지 파악이 가능합니다. Server 요청을 처리하는 ORIGIN 서버의 소프트웨어 정보 클라이언트가 서버에 요청하더라도 여러 프록시 서버를 거쳐서 목적지 서버에 도착하게됩니다. 그 서버를 오리진 서버라고합니다.
전송방식 설명 • 단순 전송 • 압축 전송 • 분할 전송 • 범위 전송 컨텐츠의 length를 알수있을경우 컨텐츠의 대한 길이를 같이 주는방식입니다. 한번에 요청하고 한번에 받습니다. 압축을 사용하여 내용이 많이 줄어들며 Content-Encoding이 꼭 추가가 됩니다. 사진에서는 서버에서 5바이트씩 전송됩니다. 용량이 매우 큰 경우 분할하여 전송시 바로바로 사용할수있게됩니다. 처음부터가아닌 해당 된 지점에서만 데이터를 요청하여 다운받는경우가있습니다.
협상(콘텐츠 네고시에이션) 클라이언트가 요청시에 선호하는 표현 요청을 지정하여 서버가 클라이언트에게 지정된 표현 요청으로 데이터를 전달합니다. • Accept: 클라이언트가 선호하는 미디어 타입 전달 • Accept-Charset: 클라이언트가 선호하는 문자 인코딩 • Accept-Encoding: 클라이언트가 선호하는 압축 인코딩 • Accept-Language: 클라이언트가 선호하는 자연 언어 한국으로 브라우저로 다중언어 지원하는 사이트를 접속시 사이트의 기본언어인 영어로 해당화면을 응답합니다. Accept언어를 지정하여 요청하게되면 서버에서 요청한 언어가 지원되는 대상일경우 요청한 언어로 응답하게된다. Accept언어가 한국어여도 서버에서 1순위가 독일어 2순위가 영어일경우 1순위인 독일어로 응답받..
표현헤더에는 다음과 같은 정보가 들어간다. • Content-Type: 표현 데이터의 형식 • Content-Encoding: 표현 데이터의 압축 방식 • Content-Language: 표현 데이터의 자연 언어 • Content-Length: 표현 데이터의 길이 Content-Type 컨텐트 바디에 어떠한형식의 데이터가들어가는지 명시되며 HTML, JSON, IMAGE가 들어가게됩니다. • text/html; charset=utf-8 • application/json • image/png Content-Encoding 표현데이터를 압축하기위해 사용되며 데이터를 전달하는곳에서 압축 후 인코딩 헤더를 추가합니다. 데이터를 읽는쪽에서 인코딩 헤더의 정보로 압축을 해제하여 사용합니다. • gzip • defl..
HTTP 헤더 개요 HTTP 헤더는 전송에 필요한 모든 부가정보가 들어갑니다. 메세지 바디의 내용, 바디의 크기, 압축, 인증, 요청클라이언트, 서버 정보, 캐시등 많은 정보가 들어가며 필요시 임의의 헤더의 추가가 가능합니다. RFC2616(과거) 메세지 본문은 엔티티 본문을 전달하는데 사용되며 엔티티 본문은 요청이나 응답에서 전달할 실제 데이터입니다. 엔티티 헤더는 엔티티 본문의 데이터를 해석할수있는 정보입니다. (데이터 유형(HTML,JSON), 데이터 길이, 압축 정보등등..) RFC723x 변화 2014년 신규 RFC7230 등장하면서 RFC2616은 폐기가 되어버렸습니다. 엔티티(Entity) -> 표현(Representation) , 표현 = 표현 메타데이터 + 표현 데이터로 수정되었습니다. ..
4xx - 클라이언트 오류, 5xx - 서버 오류 4xx 클라이언트의 요청에 잘못된 문법등으로 서버가 요청을 수행할 수 없음, 오류의 원인이 클라이언트에 있음. 클라이언트가 이미 잘못된 요청 데이터를 보내고 있기 때문에 똑같은 재시도가 실패함. 400 Bad Request • 요청 구문, 메시지 등등 오류 • 클라이언트는 요청 내용을 다시 검토하고, 보내야함 • 예) 요청 파라미터가 잘못되거나, API 스펙이 맞지 않을 때 401 Unauthorized 클라이언트가 해당 리소스에 대한 인증이 필요함 (로그인이 필요) • 인증(Authentication) 되지 않음 • 401 오류 발생시 응답에 WWW-Authenticate 헤더와 함께 인증 방법을 설명 • 참고 • 인증(Authentication): 본..
3xx - 리다이렉션1 클라이언트가 서버에게 요청했지만 완료하기 위해 유저 에이전트의 추가 조치 필요 • 300 Multiple Choices (거의 사용하지않음 , 본문내용에서는 정리하지않음) • 301 Moved Permanently • 302 Found • 303 See Other • 304 Not Modified • 307 Temporary Redirect • 308 Permanent Redirect 301, 308 : 리소의 URI가 영구적으로 이동된 경우, 301 = 리다이렉트시 요청 메서드가 GET으로 변하고, 본문이 제거될수있음(MAY) 308 = 리다이렉트시 요청 메서드와 본문 유지(처음 POST를 보내면 리다이렉트도 POST 유지) 일시적인 리다이렉션 - 302, 307, 303 - 리..
2xx - 성공 2xx : 클라이언트의 요청을 성공적으로 처리됨. 200 : Ok - 클라이언트의 요청을 성공적으로 처리 201 : Created - 클라이언트의 요청으로 서버측에서 리소스를 생성을 한 경우 (주로 POST로 처리되면 응답) 202 : Accepted 204 : No Content 200 - 자료를 요청하면 성공적으로 조회 완료시 응답 201 - 리소스 생성 요청 시 서버측에서 해당 리소를 생성 및 관리를위한 Location를 응답합니다. 202 Accepted 요청이 접수되었으나 처리가 완료되지 않았음 • 배치 처리 같은 곳에서 사용 • 예) 요청 접수 후 1시간 뒤에 배치 프로세스가 요청을 처리함 204 No Content 서버가 요청을 성공적으로 수행했지만, 응답 페이로드 본문에 보..