목록전체 글 (18)
나나나
토큰 기반 인증 모던 웹서비스에서 많이 사용되고 있으며 토큰을 사용해 유저들의 인증작업을 처리하는 것 장점 Stateless 서버 상태를 유지 않는 서버로 상태 정보를 저장하지 않는다. 그러므로 서버는 클라이언트측에서 들어오는 요청만으로 작업을 처리한다. 이렇게 상태 정보가 없는 경우 클라이언트와 서버의 연결고리가 없어 서버의 확장성이 높아진다 모바일 어플리케이션 모바일 어플리케이션에 사용할 안전한 API를 만들기 위해서는 쿠키 같은 인증시스템은 이상적이지 않다. 토큰 기반 인증을 도입해 더욱 간단하게 해결할 수 있다. 인증 정보 전달 다른 웹서비스에서도 로그인하는 것이 가능해진다. 대표적으로 OAuth가 있고 페이스북/구글같은 소셜 계정을 이용하는 것을 말한다. 보안 토큰 기반 인증 시스템으로 어플리케..
동기(Synchronous)와 비동기(Asynchronous) 작업을 수행하는 주체가 두 개 이상 처리해야 할 작업들을 어떤 흐름으로 처리할 것인가 호출되는 함수의 작업 완료 여부를 누가 신경 쓰느냐 동기 작업을 수행하는 두 개 이상의 주체가 동시에 수행을 시작하거나, 동시에 끝나거나, 한 주체의 수행이 끝나는 동시에 다른 주체가 시작하는 것을 의미한다. 비동기 두 주체가 서로의 수행 시작, 종료 시간과 관계 없이 별도의 수행 시작, 종료 시간을 가지고 있는 것을 의미한다. A가 B를 호출했을 때 B가 작업을 완료하고 리턴하길 기다리거나, B로부터 바로 리턴 받더라도 작업 완료 여부를 A가 계속 확인하면서 신경 쓴다면 동기이고, 어떤 상황에서든 A가 B의 작업 완료를 신경쓰지 않으면 비동기이다. 블로킹(..
DOM(Document Object Model) HTML, XML 문서에 접근하기 위한 일종의 인터페이스이다. 문서 내의 모든 요소를 정의하고, 각각의 요소에 접근하는 방법을 제공한다. W3C의 표준 객체 모델로, 계층 구조로 표현된다. DOM 트리 브라우저에서는 HTML코드를 해석하여 DOM이라는 객체형태의 모델로 저장한다. 그렇게 저장된 정보를 DOM Tree라고 한다. HTML element는 Tree형태로 저장되는 것이다. 복잡한 DOM 트리를 자바스크립트 탐색 알고리즘으로 탐색하는 것은 매우 힘들다. 그래서 브라우저에서는 DOM이라는 개념을 통해 다양한 DOM API를 제공한다. 브라우저는 DOM 트리를 찾고 조작하는 걸 쉽게 도와주는 여러 가지 메서드(DOM API)를 제공한다. DOM은 자바..
Authentication(인증) 사용자를 식별하고 누구인지 확인하는 프로세스이다. Authorization(인가/승인) 해당 사용자에게 리소스에 대한 엑세스 권한을 부여하는 것이다. (사용자의 신원이 성공적으로 인증된 후에 발생) Authentication 자신이 주장하는 사용자가 누구인지 확인하는 행위로 모든 보안 프로세스의 첫 번째 단계이다. 암호 : 사용자 이름과 암호는 가장 일반적인 인증 요소이다. 사용자가 올바른 데이터를 입력하면 시스템은 신분이 유효한 것으로 간주하고 액세스 권한을 부여한다. 일회성 핀(One-time pins) : 하나의 세션 또든 트랜잭션에만 액세스 권한을 부여한다. 인증 앱 : 액세스를 담당하는 외부 기관을 통해 보안 코드를 생성한다. 생체 인식 : 사용자는 시스템에 엑..
1. This 자바스크립트의 this 키워드는 자신이 속한 객체를 참조한다. Javascript에는 전역스크립트나 함수가 실행될 때 실행 문맥(Execution context)가 생성된다. 모든 context에는 참조하고 있는 객체(this binding)가 존재하는데, 현재 context가 참조하고 있는 객체를 알기 위해 this를 사용한다. 자바스크립트의 함수는 호출될 때, 매개변수로 전달되는 인자값과 arguments객체, this를 암묵적으로 전달받는다. 이 때, this에 바인딩되는 객체는 함수 호출 방식에 따라 this에 바인딩되는 객체가 달라진다. this binding은 함수를 호출할 때 함수가 어떻게 호출되었는지에 따라 this에 바인딩할 객체가 동적으로 결정되는 것을 말한다. 참고 : ..
1. 자바스크립트의 함수 여러 개의 인자를 받아서, 그 결과를 반환한다. Javascript 함수는 return 값이 반드시 존재하며, 명시하지 않으면 undefined를 반환한다. 파라미터의 개수와 인자의 개수가 일치하지 않아도 오류가 발생하지 않는다. -> 별도의 에러처리 필요 만약, 파라미터가 1개일 때 인자를 주지 않으면, 이미 정의된 파라미터(매개변수)는 undefined라는 값을 갖게 된다. undefined는 변수가 초기화 됐지만 값이 할당되지 않았음을 의미한다. 만약, 파라미터가 1개일 때 인자의 개수가 더 많더라도 오류가 발생하지 않는다. 1. 함수 선언문(정의문) function 키워드와 함수명, 매개변수 목록, 함수 몸체로 구성된 것. function foo() {} 2. 함수 표현식..
원본 출처 CSS3 Layout | PoiemaWeb poiemaweb.com ... ... ... ... ... ... 원본의 footer 부분 CSS footer { /* footer를 aside위에 올리기 위해 사용(부유객체) */ position: absolute; height: 60px; width: 100%; padding: 0 25px; line-height: 60px; color: #8a8c8f; border-top: 1px solid #dee5e7; background-color: #f2f2f2; } footer를 하단에 고정시키기 위해 fixed를 사용하면 스크롤이 되어도 그 자리를 고수하기 때문에 본문을 가릴 수 있다. 그러므로 absolute로 설정하여 다른 요소가 공간을 차지하고 ..
//예제 배열 const inventors = [ { first: 'Albert', last: 'Einstein', year: 1879, passed: 1955 }, { first: 'Isaac', last: 'Newton', year: 1643, passed: 1727 }, { first: 'Galileo', last: 'Galilei', year: 1564, passed: 1642 }, { first: 'Marie', last: 'Curie', year: 1867, passed: 1934 }, { first: 'Johannes', last: 'Kepler', year: 1571, passed: 1630 }, { first: 'Nicolaus', last: 'Copernicus', year: 1473,..