본문 바로가기

🌈 백엔드/네트워크 HTTP

네트워크_텍스트파일 vs 바이너리 파일

반응형
SMALL

 

 

 

[1] 메세지의 파일 종류 


 

(1) 텍스트 파일과 바이너리 파일 

바이너리 파일 : 문자와 숫자가 저장되어 있는 파일, 읽을수 없는 파일 (이미지, 동영상.... )

텍스트 파일 : 문자만 있는 저장되어있는 파일 , 읽을수 있는 파일 

 

바이너리 파일

 

 

① 바이너리 파일 →바이너리파일 

바이너리 파일 -> 바이너리파일

② 텍스트파일  바이너리파일 

텍스트 파일을 바이너리 파일로 만들기 위해 읽고 쓰는 작업을 한다면

그 데이터 타입에 따라 int, char, float 데이터 크기를 char로 바꾸면서 데이터 크기 차이가 있을수 있다 

 

(2) 바이너리 데이터 전송

바이너리 데이터를 텍스트 기반의 http 프로토콜로 보낸다. 그 방법은 2가지 

 

① 방법1 : MIME 마임 

 

텍스트 기반 프로토콜(HTTP)에 바이너리 데이터를 전송하기 위해 사용된다

HTTP의 Content-Type헤더에 사용된다 

데이터 타입을 명시한다 

 

타입 설명 MIME타입 예시 (타입/서브타입)
text 모든 문서  text/plain
text/html
test/css
text/javascript
image 모든 이미지 image/bmp
image/webp
audio 모든 오디오 파일 audio/midi
audio/mpeg
audio/webm
audio/ogg
audio/wav
video 모든 오디오 파일 video/webm
video/ogg
application 모든 종류의 이진 데이터 applicaiton/octeststream
application/pkcs12
application/vnd.mspowerpoint
application/xhtml+xml
applicaiton/xml
application/pdf

 

 

POSTMAN에서 마임을 설정할수 있다 

텍스트가 아닌 이미지 파일로 타입을 설정한다 

 

 

텍스트 타입과 

바이너리 데이터 타입이 구분되어 

요청메세지에 확인이 가능하다 

 

 

 

②방법2 : base64

 

64진법을 이용하여 바이너리 데이터를 텍스트 데이터로 변환할때 사용한다 

가장 안정적으로 보낼수 있는 64개의 문자로 구성되어있다 

단점으로 데이터의 크기가 커질수 있다 

 

 

https://www.base64encode.net/

 

 

 

 

이미지파일을 넣으면 아래 Base64 데이터 정보가 만들어진다 

 

이 Base64를 사용하기 위해 

VS Code를 열어 html 파일을 생성한다 

! 단축어로 기본 구성 만들기 

파일을 base64 데이터로 사용하기위해 

data:image/jpeg;base64, base64데이터코드 붙여넣기를 한다 

 

 

 

 

 

 

 

서버 실행시 정상적으로 바이너리 파일인 이미지파일을 base64 데이터 코드를 이용하여 출력하였다 

 

 

 

반응형
LIST