Skip to content

데일리 스크럼 | 2주차

jeongmin edited this page Feb 2, 2024 · 1 revision

기간: 24.01.11 ~ 24.01.14

1월 11일

어제 한 일

  • 🦊 Server, Location 블록 클래스 설계
    • 예제 config에 맞는 객체 생성
  • 🐶 RequestParser 객체 설계 및 파싱 코드 작성해보기
    • 🦊🐶 구현 방향성 설계

오늘 할 일

  • 🦊🐶 커스텀 Error 설계 (ex: 1 1 01)
    • 명세페이지 만들기, 명세 제작
  • 🦊 에코 서버 설계 및 구현
    • 한 커넥션 흐름을 관리하는 클래스 구현
  • 🐶 RequestParser 객체를 활용하여 Http Request 파싱 ( chunked는 고려 X )

1월 12일

어제 한 일

  • 🦊🐶 커스텀 Error 설계 (ex: 1 1 01)
    • 명세페이지 만들기, 명세 제작
  • 🦊 에코 서버 설계
    • 한 커넥션 흐름을 관리하는 클래스 설계
  • 🐶 RequestParser 객체 Http Request 파싱 설계

오늘 할 일

  • 🐶 노션 개인 요금제로 변경하기
    • 원석 GUEST 초대
  • 🐶 RequestParser 객체를 활용하여 Http Request 파싱 ( chunked는 고려 X )
  • 🦊 상태코드 예외 올리기
  • 🦊 원석이 const& 로 바꾸기
  • 🦊 폴더 변경한 내용 풀리퀘 때리기
  • 🦊 에코 서버 구현
    • kqueue
    • socket
    • connection
    • 가상 서버
    • EventLoop
  • 🍪 간식시간: 3시 반 / 저녁시간: 7시 / 퇴근: 10시

1월 13일

어제 한 일

  • 🐶 노션 개인 요금제로 변경하기

    • 원석 GUEST 초대
  • 🐶 RequestParser 객체를 활용하여 Http Request 파싱 ( chunked는 고려 X )

    • request-line 파싱
      • 단일 SP 기준으로 split → size가 3이 아닌 경우 예외 처리
      • method가 GET, POST, DELETE가 아닌 경우 예외 처리
      • 이외의 uri, http version는 그냥 저장
    • header 파싱
      • CRLF 들어오면 header field 한 줄에 대한 입력이 끝났다고 정의
      • 가장 처음 나오는 : 을 기준으로 split → size가 2가 아닌 경우 예외 처리
      • 중복된 field-name 예외 처리
      • header field-name이 공백으로 끝나는 경우는 예외 처리
        • 소문자로 저장
      • header field-value는 선행, 후행 공백 제거 후 저장
        • 콤마로 split 처리는 아직 하지 않고 모두 처음 값으로 저장
    • body 파싱
      • RFC 7230 3장까지 읽음
  • 🦊 자잘한 리팩토링

    • 🦊 상태코드 예외 올리기
    • 🦊 원석이 const& 로 바꾸기
    • 🦊 폴더 변경한 내용 풀리퀘 때리기
  • 🦊 에코 서버 구현

    • kqueue PR 받기
    • socker 클래스 구현
    • connection 클래스
    • ServerManager 클래스 구현중

오늘 할 일

  • 🦊 에코 서버 구현 완료
    • Timeout 오류 수정
    • eventloop 구현
    • 너무 상세한 구현보다는 틀만 만들고 기능 우선 구현하기
  • 🐶 body 파싱
    • Content-Length 헤더가 들어온 경우 body 저장
    • RFC 추가로 읽기 - chunked

1월 14일

어제 한 일

  • 🐶 body 파싱
    • Content-Length 헤더가 들어온 경우 body 저장
  • 🦊 에코 서버 구현 완료
    • Timeout 오류 수정
    • eventloop 구현
    • 너무 상세한 구현보다는 틀만 만들고 기능 우선 구현하기

오늘 할 일

  • 🐶 body 파싱
    • Content-Length 헤더가 들어온 경우 body 저장하고 나서 처리 확인하기
    • RFC 추가로 읽기 - chunked
  • 🐶 현재까지 파싱한 것 repo에 있는 코드랑 합치고 PR 날리기
  • 🦊 github 설정
    • github actions - C++98 컴파일 테스트 환경 마저 설정
      • C++ 설치
    • github label 설정하기
    • github issue, PR 제목 형식 수정
  • 🦊 시간 남으면 리팩토링 issue 처리하기

Clone this wiki locally