20210707

Jin·2021년 7월 7일

Facts

<DOM 을 깨우치다> 독서

DOM 에 대한 일반적 인사이트를 얻고, 중요 개념들을 찾아볼 수 있도록 인덱싱 해놓기 위해 읽는다.

DOM 이란?

DOM 이란, HTML 문서를 해석하여 개체(element) 들의 tree 로 구조화 한 것을 말한다.

상속, 유형

DOM 의 하위 개체는 상위 개체의 속성과 메소드를 상속받는다.

하위 개체는 개체의 유형에 따라 구분되어 있으며, type 속성을 이용해서 유형을 알 수 있다.

DOM Collection

element.childNodes 와 같이 여러개의 개체를 포함하는 collection 이 정의되어 있다. 이들은 길이값을 갖긴 하지만, 배열이 아니다. 따라서, 배열 메서드를 사용할 수 없으면, 배열 메서드를 이용한 연산을 해주기 위해서는 배열로 변환해 주어야 한다.

DOM 탐색

개체의 속성을 통해서 자식개체, 부모개체 및 형제 개체를 탐색할 수 있다. 이들의 참조는 상위 개체인 Node 에 있는 속성으로, 상속받은 하위 개체들에서 동일하게 사용할 수 있다.

개체의 유형은 element 만 있는 것이 아니다. comment 개체와 text 개체도 여기에 포함된다. 따라서 childNodes 와 같은 속성을 사용하면, 이들 개체까지 모두 들어있는 값을 얻게 된다. 이는 일반적으로는 적절하지 않으므로,
다음과 같이 element 만을 탐색할 수 있는 방법도 존재한다.

  • firstElementChild
  • lastElementChild
  • nextElementChild
  • previousElementChild
  • children
  • parentElement

프로그래머스 <큰 수 만들기> 풀이

문제: https://programmers.co.kr/learn/courses/30/lessons/42883?language=python3
풀이:

<DOM 을 깨우치다> 독서

Document 노드

문서 전체에 대한 정보, 브라우저에 대한 정보를 얻을 수 있다. 현재 문서가 어디에 포커스 되어 있는지도 확인이 가능하다.

Element 노드

document 노드에서 createElement 메서드를 사용하면, element 노드를 생성할 수 있다. element 의 속성을 변경하거나 class 를 조작하는 등의 연산을 해줄 수 있다. HTMLElement 의 종류에는 다양한 것들이 있지만, 위의 기능은 기본적으로 제공한다.

Element 의 선택

css 의 selector 와 같은 값을 이용하거나, id, tagName 등을 사용해서 element 를 선택해줄 수 있다.

그림으로 배우는 HTTP Network

설정 미비로 인한 취약점으로의 공격

강제 브라우징

강제 브라우징은 접근을 원하지 않는 경로로 강제로 브라우징 해서 리소스를 얻는 공격이다. 특정 URL 에 권한을 설정해놓지 않은 경우에 이러한 공격에 취약해진다.

에러메세지 처리

세션 공격

세션 하이재킹, 세션 픽세이션

둘 모두 사용자의 인증을 가로채는 것이다. 전자는, 사용자의 세션아이디를 가로채서 서버로의 요청을 하고, 후자는 공격자가 세션 id 를 발급받은 후에 해당 id 로 사용자에게 인증을 받도록 하여 공격하는 방식을 취한다.

크래킹 공격

Feelings

마음이 급해서는 안되는 것 같다. 무언가 이루어지게 하려면 충분한 양의 관심을 투입해야 한다. 즉, 해당 시간에 집중적 에너지를 온전히 투입하는 것이 핵심이다. 그러기 위해서는, 서두름 보다는 문제의 범위를 제한하고 작게 작게 지배해가는 것이 도움이 된다.


비틀어서 어떻게든 하려고 하지말자.


나에게 주어진 기회들에 감사한다. 노력할수 있고 시도할 수 있는것 자체가 좋다. 몸이 피곤하면 부정적 생각이 들때가 있지만, 굳이 논리적으로 해결하려고 하지 말자. 지나면 그만이다.

조그만 일을 하자. 할 수 있는 일을 하자.

Affirmation

나는 끝까지 헤쳐 나가는 사람이다.

0개의 댓글