20210202 - TIL

Starve·2021년 2월 2일
0

TIL

목록 보기
25/38
post-thumbnail

TIL

  • 자바 - 소켓 통신 시, 한국어 출력방법.

    bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream(),"euc-kr")); 
    // 혹은 "UTF-8" / "utf8"
    
    bufferedWriter = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(),"euc-kr"));
    // 혹은 "UTF-8" / "utf8

https://blog.naver.com/kjhfreedom21/110090630849

  • 자바 - 바이트 계산 방법

    String test = "안녕하세요";
    
    System.out.println("length = " + test.getBytes().length);
    // length 뒤에 ()괄호가 안붙는 다는 점에 유의!!
    
    
    > 결과:
    length = 10
  • 인코딩

    • 콘텐츠 인코딩(Contents-Encoding)

      • 큰 HTML 문서 전송 시간을 줄이기 위해 사용하거나,
        제 3자가 볼 수 없게 콘텐츠를 암호화 하거나 뒤섞어서 보내기 위한 목적을 가진다.
      • 콘텐츠의 포맷과 연관되어있다.
      • gzip, compress, deflate, identity와 같은 알고리즘 사용
      • 발송하는 쪽에서 콘텐츠에 적용.

연관 헤더:

  • Content-Type
  • Content-Length
  • Content-Encoding
  • Accept-Encoding
  • 전송 인코딩(Transfer-Encoding)

    • 안전한 전송을 위해 존재.
    • 크기를 알 수 없다.
    • 현재 HTTP에선 오진 청크 인코딩만을 명세한다.

연관 헤더:

  • Transfer-Encoding: 안전한 전송을 위해 어떤 인코딩이 메시지에 적용되었는지 수신자에게 알림

    HTTP/1.1 200 OK
    Transfer-Encoding: chunked
    Server: Apache/3.0
    
    ...
  • TE: 어떤 확장된 전송 인코딩을 사용할 수 있는지 서버에게 알려주기 위해 요청 헤더에 사용.(클라이언트에서 서버에게 알려주기 위하여)

    GET / HTTP/1.1
    Host: www.test.com
    User-Agent: Mozilla/5.0
    TE: trailers, chunked
  • 청크 인코딩(Chunked-Encoding)

    • 메세지를 일정 크기의 청크로 쪼갠 후, 서버는 각 청크를 순서대로 전송함.
      본문이 동적으로 생성되며, 본문 전체를 모두 보낼 때 까지 반복한다.
    • 청크의 앞부분에는 현재 청크의 길이를 나타내는 16진수 형태의 숫자가 오고,
      이후 '\r\n'과 본문, 그리고 종료 시엔 0을 발송한다.
    • 큰 HTML 테이블을 생성하는 경우나, 큰 이미지를 전송하는 경우에 유용하게 활용할 수 있다.

    https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/Transfer-Encoding

    https://eminentstar.tistory.com/48

Todo

  • 미션 1,2 미션 제출 완료

  • 듀오링고 문제 풀기

  • 마스터 클래스

느낀점

  • 미션을 모두 완료 했지만, 부족함이 많아 아쉬움을 느낀다...
    밀린 이전의 미션들을 먼저 끝내고..!😅 조금 더 공부해서 추후에 수정을 해봐야할 것 같다.
  • 어떻게 이용되고 어떤식으로 활용되는지 알듯말듯 해서 좀 어렵게 느껴졌다.. 나중에 관련 책이나 강의를 더 들어봐야겠다.
profile
노력

0개의 댓글