일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- codestates
- 타입스크립트
- 자바스크립트
- 알고리즘
- programmers
- SQL 고득점 Kit
- javascript
- 4주 프로젝트
- 2주 프로젝트
- 손에 익히며 배우는 네트워크 첫걸음
- 제로초
- python
- 리트코드
- 타임어택
- 파이썬
- 정재남
- 코드스테이츠
- 프로그래머스
- 리액트
- 회고
- 코어 자바스크립트
- 렛츠기릿 자바스크립트
- 백준
- 토익
- Async
- 리덕스
- js
- til
- LeetCode
- 타입스크립트 올인원
Archives
- Today
- Total
Jerry
[스프린트][회고]Chatterobox Client 본문
반응형
Introduction
이 스프린트에서 서버 구현과 데이터베이스 관련 내용을 제외되어 있습니다.
서버는 만들어져 있는 환경에서 내가 클라이언트와 서버 간의 통신을 구현을 목적으로 "채팅 애플리케이션"을 만들어 보았습니다.
(참고로, AWS에 구축/배포된 코드스테이츠 전용 서버를 활용합니다 )
Bare Minimum Requirements
- 아래 제공되는 chatterbox-server API 문서를 이용해서 클라이언트를 만드세요.
- 클라이언트는 서버로부터 받아온 메시지들을 보여 줄 수 있어야 하고, 내가 작성한 메시지를 서버에 보낼 수 있어야 합니다.
- 클라이언트가 테스트에 통과할 수 있도록 만드세요.
- XSS 공격을 어떻게 막을 수 있는지 생각해보세요.
Advanced Challenges
아래의 Advanced 컨텐츠들은 테스트 케이스가 작성되어 있지 않습니다. 가능하다면 spec/chatterboxSpec.js에 describe와 it을 이용해 새로운 테스트 케이스를 만들어보세요.
- Room: 유저는 Room을 생성할 수 있어야 하고, 서버로부터 받은 메시지들은 room에 의해서 구분될 수 있어야 합니다.
- Auto Fetching: 클라이언트에서 새로고침을 하지 않더라도 서버에서 계속 새로운 메세지들을 받아 올 수 있어야 합니다.
Title : Chatterbox Application
스프린트 특성상 짧은 시간과 정해진 목표를 지키기에 초점을 두었습니다.
클라이언트단에서 서버와 데이터를 주고 받는 "채팅 애플리케이션"을 만들었습니다.
아래 이미지를 보면 어떻게 구성 됐는지 알 수 있습니다.
Features
- submit 버튼을 눌렀을 때, 작성한 이름과 메시지가 하단 메시지 창에 맨 상대에 추가된다.
- Room별로 내용이 분류되어있다.
- auto-fetching 버튼을 눌렀을 때, 1초 간격으로 메시지가 동기화된다.
what you'll learn
- API 문서를 참고해서 소스코드 짜기
- 클라이언트와 서버와 메시지(데이터) 주고받기
- XSS 공격에 막을 수 있는지 여부 고민하기
- Room별로 관련 내용 구분하기
- auto fetching: 자동 업데이트시키기
- form 태그 활용하기
- selection / option 태그 활용
Not can do yet
- Room 별 구분 짓고 나서, 새 메시지 추가시키면 전체 글과 함께 메시지 창이 업데이트된다.
Tech stack
- HTML
- CSS
- JavaScript
- Ajax
반응형
'자기 성찰 > 회고' 카테고리의 다른 글
[스프린트][회고]twittler (0) | 2021.01.11 |
---|---|
[스프린트][회고]mini-node-server (0) | 2020.12.29 |
[토크 세션][후기 공유]주제: 나를 돋보이게 (0) | 2020.12.28 |
[토크 세션][후기 공유]주제: 취업하기 전에 알았으면 더 좋았을 것들 (0) | 2020.11.07 |
[Codestate][Pre-course] 4주 후기 (0) | 2020.10.18 |