HTTP 웹 기본 지식28 HTTP 헤더1 - 일반 헤더[전송 방식] 단순 전송 - Content-Length 메시지 바디의 컨텐츠 길이를 알 수 있을 때 단순하게 요청하고 한번에 응답받음 압축 전송 - Content-Encoding 서버에서 용량을 줄이기위해 압축해서 보낼 때 뭘로 압축해서 보냈는지 알려주기 위해 분할 전송 - Transfer-Encoding 한번에 큰 용량의 데이터를 보내면 받을 때 시간이 걸림 큰 용량의 데이터를 나눠보내서 데이터를 받는대로 바로 표시 가능 Content-Lenght가 처음에 예상이 안되고 보낼 때마다 바이트정보를 보내기 때문에 Content-Lenght를보내면 안됨 범위 전송 - Range, Content-Range 데이터를 받다가 중간에 끊겼을 때, 다시 요청하면 처음부터 다시 받기 때문에 안받은 부분만 다시 요청 2023. 1. 27. HTTP 헤더1 - 일반 헤더[콘텐츠 협상] 협상(콘텐츠 네고시에이션) - 클라이언트가 선호하는 표현 요청 Accept: 클라이언트가 선호하는 미디어 타입 전달 Accept-Charset: 클라이언트가 선호하는 문자 인코딩 Accept-Encoding: 클라이언트가 선호하는 압축 인코딩 Accept-Language: 클라이언트가 선호하는 자연 언어 협상 헤더는 요청시에만 사용 Accept-Language 적용 전 한국어 브라우저를 사용하는 클라이언트가 다중 언어 지원 서버에 요청을 할 때 헤더에 아무 정보를 넣지 않으면 기본값인 영어로 응답이 옴 Accept-Language 적용 후 Accept-Language에 한국어로 요청하고 서버에서 응답을 한국어로 받음 Quality Values(q) - 협상과 우선순위1 한국어를 가장 선호하지만 한국어는 .. 2023. 1. 26. HTTP 헤더1 - 일반 헤더[표현] 표현 Content-Type: 표현 데이터의 형식 Content-Encoding: 표현 데이터의 압축 방식 Content-Language: 표현 데이터의 자연 언어 Content-Length: 표현 데이터의 길이 표현 헤더는 전송, 응답 둘다 사용 Content-Type 표현 데이터의 형식 설명 미디어 타입, 문자 인코딩 ex) text/html; charset=utf-8 application/json image/png Content-Encoding 표현 데이터 인코딩 표현 데이터를 압축하기 위해 사용 데이터를 전달하는 곳에서 압축 후 인코딩 헤더 추가 데이터를 읽는 쪽에서 인코딩 헤더의 정보로 압축 해제 ex) gzip deflate identity Content-Language 표현 데이터의 자연 언.. 2023. 1. 26. HTTP 헤더1 - 일반 헤더[HTTP 헤더 개요] 용도 HTTP 전송에 필요한 모든 부가정보 ex) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버정보, 캐시 관리 정보 등 표준 헤더가 너무 많음 https://en.wikipedia.org/wiki/List_of_HTTP_header_fields 필요시 임의의 헤더 추가 가능 ex) helloworld: hihi HTTP HEADER) 헤더 분류 - RFC2616(과거) General 헤더 -- 메시지 전체에 적용되는 정보, ex) Connection: close Request 헤더 -- 요청 정보, ex) User-Agent: Mozilla/5.0 (Macintosh; ..) Response 헤더 -- 응답 정보, ex) Server: Apache Entity 헤더 -.. 2023. 1. 26. HTTP 상태코드[5xx - 서버 오류] 5xx (Server Error) - 서버 오류 서버 문제로 오류 발생 서버에 문제가 있기 때문에 재시도 하면 성공할 수도 있음(복구가 되거나 등등) 500 Internal Server Error 서버 내부 문제로 오류 발생 애매하면 500 오류 503 Service Unavailable 서비스 이용 불가 서버가 일시적인 과부하 또는 예정된 작업으로 잠시 요청을 처리할 수 없음 Retry-After 헤더 필드로 얼마뒤에 복구되는지 보낼 수도 있음 2023. 1. 6. HTTP 상태코드[4xx - 클라이언트 오류] 4xx (Client Error) - 클라이언트 오류 클라이언트의 요청에 잘못된 문법등으로 서버가 요청을 수행할 수 없음 오류의 원인이 클라이언트에 있음 클라이언트가 이미 잘못된 요청, 데이터를 보내고 있기 때문에, 똑같은 재시도가 실패함 400 Bad Request 클라이언트가 잘못된 요청을 해서 서버가 요청을 처리할 수 없음 요청 구문, 메시지 등등 오류 클라이언트는 요청 내용을 다시 검토하고, 보내야함 ex) 요청 파라미터가 잘못되거나, API 스펙이 맞지 않을 때 401 Unauthorized 클라이언트가 해당 리소스에 대한 인증이 필요함 인증(Authentication) 되지 않음 401 오류 발생시 응답에 WWW-Authenticate 헤더와 함께 인증 방법을 설명 참고 인증(Authentic.. 2023. 1. 6. 이전 1 2 3 4 5 다음