문제 상황 웹 개발시 GET Method를 통해 파라미터를 받을때 Query로 받을지 Params로 받을지 고민될 때가 있다. 그에 대한 답을 내리고자 한다. If you want to identify a resource, you should use Path Variable. But if you want to sort or filter items, then you should use query parameter. => 리소스를 식별하고 싶다면 Path, 필터링을 하고싶다면 query parameter 를 사용하라. 그렇다면 , 여러 Params를 전달하는 적절한 방법은 없을까? 구문 예시 /client/{clientId}/department/{departmentId} Reference medium.com..
Web
문제 상황 JavaScript Object 내에 'Key'를 변수를 사용하여 할당하려 하는데 변수를 통한 키 할당이 이뤄지지않음. const targetKey = 'name'; const targetValue = 'mmm'; //아래 코드가 동작하지 않음. store.update({ targetKey : targetValue // name : 'mmm' 으로 인식하지 않고, // targetKey : 'mmm'으로 인식 }, { fields : [targetKey], limit : 1 }); 해결 방법 From ES5 operator bucket '[]'를 사용한다. 수정된 코드 const targetKey = 'name'; const targetValue = 'mmm'; store.update({ //..
우선, 정규식을 작성하고 바로바로 테스트 결과와 디버깅을 할 수 있는 사이트를 소개한다. RegExr: Learn, Build, & Test RegEx RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp). regexr.com 정규식은 로그인, 회원가입 기능에서 입력 형식의 유효성 검사를 하는데도 자주 쓰이지만 해커로부터 오는 공격 트레픽중 특정 구문을 차단하기위해서도 쓰인다. 문제풀이를 하면서 정규식에 익숙해져보자. [문제1] E-mail "hacker"라는 문자열을 포함한 아이디를 가진 이메일 주소를 정규식으로 잡아내고싶다. 단, 이메일의 아이디는 영문 소문자+숫자로만 이루어진다. 조건에 부합하는 정규..
HTTP / 1.x 의 Connection 방식은 크게 3가지로 나뉜다. 1. Short-Lived Connection 2. Keep-alive Connection 3. Pipelining Connection 이 3가지의 특징에 대해 알아보도록 하자. 1. Short-Lived Connection HTTP 1.0 초기 버전에서 택한 방식인데 이방식은 치명적인 단점을 가지고 있다. 다음 그림에서 단점이 드러난다. 한 번의 HTTP 요청/응답 마다 연결/해제를 반복한다는 점이다. 이는 하나의 HTML에 여러 이미지, 동영상이 포함되 있는 경우 여러번의 HTTP 요청/응답이 이뤄지기 때문에 통신량이 급격히 많아진다. 초기의 웹 페이지들은 텍스트로만 구성되있었기 때문에 short-lived Connectino ..
Cahce 주어진 리소스의 복사본을 저장하고 요청 시에 그것을 서브하는 기술. 목적 변경되지 않은 리소스에 대해 서버에 요청하기 전에 이미지 등을 클라이언트(웹 브라우저) 단에서 처리하여 서버의 로드량 (부하) 감소 -> 성능 향상 private cache(browser) : 단일 사용자에게 초점 맞춰짐. HTTP를 통해 다운로드된 모든 문서를 가지고 앞으로,뒤로 가기 등을 위해 이용 가능한 방문했던 문서를 만드는데 사용됨. public cache(proxy) : 해당 네트워크 내에 조회가 자주 되는 리소스를 몇 번이고 재사용하여 network traffic, latency 감소 예시 방문했던 페이지 접속시 css/js, jpg, png 등의 리소스 파일을 Client PC 에서 로드 Cookie 서버가..
HTTP HyperText Transfer Protocol [특징] TCP 기반 통신방식 3 Way Handshake로 동작. Connectionless : Request - Response 이후 접속을 바로 끊어버린다. Stateless : 통신 상태가 저장되지 않는다. 이러한 특징으로 불긑정 다수를 대상으로하는 서비스에 적합한 방식이다. 통신 상태가 저장되지 않는 단점은 캐시나 web socket protocl 기술로 커버한다. [HTTP 1.x 구조] start line : HTTP Method, URL, HTTP Protocol Version Header : 처리 가능한 파일의 종류, 문자 코드, 언어, 콘텐츠 길이 등 start line + Header == Head Body: Single Re..