Tips

CORS 정의CORS 는 웹 브라우저를 통해 서로 웹 서버에서 다른 도메인간 리소스 접근을 허용하도록 하는 웹 브라우저 기술 표준을 말한다. (출처: 정보통신용어사전) 로그인, 회원가입 시 만나게 되는 CORS! 어떤 건지 정의를 정보통신용어 사전에 검색해봤는데, 개념이 난해하고 이해하기 쉽지 않다..! 아래의 일상적인(?) 상황을 통해 CORS에 대해 알아보자. 1. A라는 사람이 있다고 가정해보자. A는 아주 바쁜 사업가다. 그래서 자신의 연락을 대신 관리해주는 사람인 B를 고용하게 된다. 2. A는 B에게 누군가 A의 사무실에 전화를 하면 통화를 바탕으로 발신자에 대한 정보(누구, 왜 등)를 수집하고 대기하라고 말해둔다. 3. B는 이후에 A에게 전화를 걸어 발신자에 대한 정보를 공유하고 A가 발신..
원시 값은 변경 불가능한 값이기 때문에 값을 직접 변경할 수 없다. 따라서 변수 값을 변경하기 위해 원시 값을 재할당하면 새로운 메모리 공간을 확보하고 재할당한 값을 저장 후, 변수가 참조하던 메모리 공간의 주소를 변경한다.(값의 이러한 특성을 불변성 이라 한다) 다음의 예제를 보자. "hello" + "world"; // "helloworld" 위의 예제를 보면 "hello"와 "world"가 결합되어 좌항의 값이 변경되는 것 같이 보인다. 그러나 실제로는 두 문자열을 합친 새로운 값이 생성된다. 때문에 빈번한 원시형 값의 수정으로 인한 성능 저하를 막기 위해서는 버퍼(Buffer)를 사용하는 것이 권장된다. 1. 버퍼(Buffer) Buffer의 영단어 뜻은 완충제, 완화하다 라는 의미이다. 뜻만 보..
1. 멱등성이란? 수학에서 사용하는 용어에서 유래한 것으로. 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 뜻한다. 2. HTTP Method 의 멱등성 멱등성의 개념은 HTTP 에서도 동일하게 적용될 수 있다. 동일한 요청을 한 번 보내는 것과 여러번 보내는 것이 서로 동일한 효과를 지니고, 서버의 상태도 동일하게 남을 때 해당 HTTP Method가 멱등성을 갖는다고 이야기한다. 멱등성을 따질 때에는 서버의 상태만 바라보면 되며, HTTP 응답 Status는 신경쓰지 않아도 된다. 올바르게 구현된 REST API 의 GET, HEAD, OPTIONS, PUT, DELETE 메소드는 통계 기록(e.g. 게시물 조회수의 증가 등)을 제외하였을 경우 멱등성이 보장된다 어떤 이유로 GET, HEA..
하드코딩의 뜻은 값을 고정시켜 놓는 것 이다. 반대로 소프트코딩은 값이 고정되지 않고 가변적인 것을 의미한다. 하드코딩의 문제는 값을 고정시켜놓기 때문에 유지보수가 어렵고 유연성이 부족하다. 다음의 예제를 보자. // 하드코딩된 예시: 숫자를 직접 사용 function calculateCircleArea() { const radius = 5; // 반지름을 하드코딩 const area = Math.PI * Math.pow(radius, 2); console.log('원의 넓이:', area); } calculateCircleArea(); 이 코드에서는 반지름을 5로 하드코딩해서 사용하고 있다. 만약 반지름을 변경하려면 함수 내부의 코드를 수정해야 한다. 더 좋은 방법은 함수에 인자로 전달해서 사용하는 것..
· Tips/보안
프로젝트에서 로그인 부분을 맡게 됐다. 이메일 로그인 인증 API 연동까지 완료했고 이메일 인증 코드 검증하는 부분을 하려고 한다. 두 달 전쯤 프로젝트 기획안을 짜면서 로그인 구현을 하게 될 것 같아 accessToken과 refreshToken의 개념에 대해 공부하며 정리했었는데 오늘은 accessToken과 refreshToken을 담는 저장소들의 차이점들을 정리하며 나은 방향을 고민해보려고 한다. 로컬 스토리지, 세션 스토리지 우선 로컬 스토리지, 세션 스토리지 둘 을 합쳐서 웹 스토리지라한다. HTML5에 추가된 저장소이며 키-값을 저장할 수 있다. (key-value 스토리지 형태라고 한다.) 로컬 스토리지, 세션 스토리지 차이점 둘의 차이점은 데이터의 영구성이다. 로컬 스토리지의 데이터는 사..
· Tips
[동향]IT 실패의 10가지 요인은 무엇일까? (kisti.re.kr) [동향]IT 실패의 10가지 요인은 무엇일까? 일반적으로 독창적인 정보기술(IT)이 사업적으로, 조직적으로, 또는 문화적인 이유로 실패하는 사례를 많이 접했을 것이다. 물론 새로운 기술의 도입에는 부작용이 따르기 마련이라는 사실에 동 scienceon.kisti.re.kr IT 프로젝트를 망치는 방법들 (slideshare.net)
· Tips/보안
목차1. OAuth란? 2. OAuth 참여자 3. Client 등록 4. OAuth 2.0의 동작 메커니즘 5. OAuth 2.0의 스코프 1. OAuth란?OAuth: 구글, 페이스북, 트위터와 같은 다양한 플랫폼의 특정한 사용자 데이터에 접근하기 위해 제3자 클라이언트(우리의 서비스)가 사용자의 접근 권한을 위임(Delegated Authorization)받을 수 있는 표준 프로토콜쉽게 말해, 우리의 서비스가 우리 서비스를 이용하는 유저의 타사 플랫폼 정보에 접근하기 위해서 권한을 타사 플랫폼으로부터 위임 받는 것이다. 2. OAuth 참여자OAuth 동작에 관여하는 참여자는 크게 세 가지로 구분할 수 있다. 1. Resource OwnerClient가 제공하는 서비스를 통해 로그인하는 실제 유저 ..
· Tips
1. behance https://www.behance.net/ Search Projects | Photos, videos, logos, illustrations and branding on Behance www.behance.net 퀄리티 높은 참고자료 찾을 수 있는 사이트. 해외 자료가 필요하거나 영감을 받고 싶을 때 보기 좋은 사이트이다. 2. dribbble https://dribbble.com/shots Dribbble - Discover the World’s Top Designers & Creative Professionals Mobile IOS App Design for Tesla | UX Design | UI Design dribbble.com behance와 유사한 사이트. 3. awww..
· Tips
Shift + Alt + F : 코드 자동 정렬 Alt + Shift + A: 블럭 주석 처리 control + shift + L : 선택한 단어와 같은 단어 모두 선택 변수명 변경: f2 alt + shift + 아래: 라인 복사
Rynn
'Tips' 카테고리의 글 목록