TIL 39 | Chrome DevTools 02- Network, Application

Saemsol YooΒ·2021λ…„ 1μ›” 15일
0

DevTools

λͺ©λ‘ 보기
1/2

Chrome DevTools κ³΅μ‹λ¬Έμ„œλ₯Ό 보며 μ •λ¦¬ν•œ λ‚΄μš©μž…λ‹ˆλ‹€ πŸ™‚
Element 와 Console 은 이곳에 μ •λ¦¬ν–ˆμŠ΅λ‹ˆλ‹€ πŸ’«

DevTools Panels

  • Elements : HTML μ½”λ“œλ₯Ό λΆ„μ„ν•˜κ³  μˆ˜μ •ν•  수 μžˆλŠ” 도ꡬ νŒ¨λ„. DOMκ³Ό CSS도 μ‘°μž‘κ°€λŠ₯
  • Console : μžλ°”μŠ€ν¬λ¦½νŠΈ μ½”λ“œλ₯Ό μ¦‰μ‹œ μ‹€ν–‰μ‹œμΌœλ³Ό 수 μžˆλŠ” νŒ¨λ„
  • Network : http λ„€νŠΈμ›Œν¬ 톡신 확인
  • Application : λΈŒλΌμš°μ € μ €μž₯μ†Œ



3. Network panel

3-1. When to use the Network panel?

  • 보톡 λ„€νŠΈμ›Œν¬ νŒ¨λ„μ€ νŽ˜μ΄μ§€μ˜ λ¦¬μ†ŒμŠ€λ“€μ΄ 잘 받아와지고 μžˆλŠ”μ§€(ν˜Ήμ€ Upload)λ₯Ό ν™•μΈν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€.
  • http λ„€νŠΈμ›Œν¬ 톡신 확인 βœ…
  • API 크둀링, νŽ˜μ΄μ§€ λ‘œλ”© μ„±λŠ₯ ν…ŒμŠ€νŠΈ
  • 이미지, μ˜μƒ λ“±μ˜ μ†ŒμŠ€(mock data ν™œμš©)

3-2. Log network activity

-νŽ˜μ΄μ§€λ₯Ό reload ν•˜λ©΄ λ„€νŠΈμ›Œν¬ ν™œλ™λ“€(λ¦¬μ†ŒμŠ€λ“€μ„ λ°›μ•„μ˜€λŠ” 것)이 network log에 μ°νžŒλ‹€!

  • Each row of the Network Log : 각각의 행듀은 λ¦¬μ†ŒμŠ€λ“€μ„ 보여쀀닀. κ°€μž₯ μœ„μ—μžˆλŠ” λ¦¬μ†ŒμŠ€λŠ” 보톡 메인 HTML λ¬Έμ„œμ΄λ‹€. 그리고 λ§ˆμ§€λ§‰ 으둜 μš”μ²­λœ λ¦¬μ†ŒμŠ€μ΄λ‹€.
  • Each column of the Network Log
  • Status : HTTP 응닡 μ½”λ“œμ΄λ‹€. (ex- 200(ok) / 500(error))
  • Type : λ¦¬μ†ŒμŠ€μ˜ νƒ€μž…μ΄λ‹€. (ex- document, stylesheet, script, png...)
  • Initiator : μš”μ²­μ΄ μ‹œμž‘λœ 곳을 μ•Œλ €μ€€λ‹€. 링크λ₯Ό ν΄λ¦­ν•˜λ©΄ μš”μ²­μ„ λ°œμƒμ‹œν‚¨ μ†ŒμŠ€ μ½”λ“œλ₯Ό 보여쀀닀.
  • Time : μš”μ²­μ΄ κ±Έλ¦¬λŠ” μ‹œκ°„ (λ¦¬μ†ŒμŠ€ λ°›μ•„μ™€μ§€λŠ”λ° κ±Έλ¦¬λŠ” μ‹œκ°„)
  • size : 뢈러온 λ¦¬μ†ŒμŠ€μ˜ 크기
  • Waterfall : 각 μš”μ²­μ˜ 단계듀을 κ·Έλž˜ν”½μœΌλ‘œ 보여쀀닀.

3-3. Filter resources

  • ν•„ν„°λ₯Ό μ΄μš©ν•΄ λ¦¬μ†ŒμŠ€λ“€μ„ μ’…λ₯˜λ³„λ‘œ λ‚˜λˆ  λ³Ό 수 μžˆλ‹€.

3-4. simulate slower network

  • Online μ—μ„œ 쒀더 느린 인터넷 ν™˜κ²½μœΌλ‘œ ν…ŒμŠ€νŠΈν•΄λ³Ό 수 μžˆλ‹€.



4. Application panel

4-1. κΈ°λŠ₯

  • λΈŒλΌμš°μ €μ˜ μ €μž₯μ†Œμ΄λ‹€.
  • Local Storage, Session Storage, Cookie κ°€ μžˆλ‹€.



4-2. Local Storage

examples

  • μ§€μ†μ μœΌλ‘œ ν•„μš”ν•œ 데이터(data persistant) (ex. μ €μž₯, λΉ„νšŒμ› 카트)
  • UI 정보듀 (ex. 에어비앀비, μŠ€μΉ΄μ΄μŠ€μΊλ„ˆ μΈμ²œκ³΅ν•­ - λ² λ„€μΉ˜μ•„ κ²€μƒ‰ν•˜λ©΄ κ·ΈλŒ€λ‘œ μœ μ§€λ˜λŠ”κ²ƒ)

localStorage keys and values

β†’ Local Storage μ—μ„œ 각 λ„λ©”μΈλ“€λ§ˆλ‹€ 확인할 수 μžˆλ‹€.

  • key 와 value 짝으둜 λ˜μ–΄μžˆλ‹€!


Edit localStorage keys or values

β†’ λ”λΈ”ν΄λ¦­ν•˜λ©΄ 각 셀듀을 μˆ˜μ •ν•  수 μžˆλ‹€.


localStorage에 μ €μž₯/호좜

  • 데이터 μ €μž₯ : localStorage.setItem("key", "value")

  • 데이터 호좜 : localStorage.getItem("key")



4-3. Session Storage

examples

  • μž„μ‹œμ €μž₯은 λ˜κ² μ§€λ§Œ λΈŒλΌμš°μ €λ₯Ό 끄면 μ‚¬λΌμ§€κ²Œ ν•  정보듀이 λ“€μ–΄κ°„λ‹€.
  • 잠깐 λ™μ•ˆ ν•„μš”ν•œ 정보
  • λ³΄μ•ˆμ΄ μ€‘μš”ν•œ 정보(ex. 은행 μ‚¬μ΄νŠΈ), specificν•œ μœ μ € 정보, 언어선택



view the sessionStorage

  • LS 처럼 각 λ„λ©”μΈλ“€λ§ˆλ‹€ 확인할 수 μžˆλ‹€.
  • ν‘œμ˜ 행을 ν΄λ¦­ν•˜λ©΄ ν‘œ μ•„λž˜μ— valueλ₯Ό 보여쀀닀.

Edit sessionStorage keys or values

β†’ λ”λΈ”ν΄λ¦­ν•˜λ©΄ 각 셀듀을 μˆ˜μ •ν•  수 μžˆλ‹€.


sessionStorage에 μ €μž₯/호좜

  • 데이터 μ €μž₯ : sessionStorage.setItem("key", "value")
  • 데이터 호좜 : sessionStorage.getItem("key")



4-4. Cookies

examples

  • 였늘만 ν•˜λŠ” 이벀트 νŒμ—…, μ„œλΉ„μŠ€ 약관에 λ™μ˜ν–ˆλŠ”μ§€ λ“±



Edit Cookies

The Name, Value, Domain, Path, and Expires / Max-Age fields 듀은 μˆ˜μ • κ°€λŠ₯ν•˜κ³  λ”λΈ”ν΄λ¦­ν•˜λ©΄ λœλ‹€!


Delete cookies

μ‚­μ œν•˜κ³ μ‹Άμ€ μΏ ν‚€λ₯Ό ν΄λ¦­ν•œ μƒνƒœμ—μ„œ X λ₯Ό 눌러 μ œκ±°ν•œλ‹€.
λ§Œμ•½ μ „λΆ€ λ‹€ μ œκ±°ν•˜κ³  μ‹Άλ‹€λ©΄, 🚫 λ₯Ό λˆŒλŸ¬μ€€λ‹€.


  • 데이터 μ €μž₯ : setcookie("key", "value", "μ§€μ†μ‹œκ°„ (μ΄ˆλ‹¨μœ„)")
  • 데이터 호좜 : document.cookie



5. Local Storage vs Session Storage vs Cookies πŸͺπŸ”₯

  • Storage : λΈŒλΌμš°μ €μ˜ μ €μž₯μ†Œ
  • Local Storage : λ‘œμ»¬μŠ€ν† λ¦¬μ§€μ˜ λ°μ΄ν„°λŠ” μ‚¬μš©μžκ°€ μ§€μš°μ§€ μ•ŠλŠ” 이상 계속 λΈŒλΌμš°μ €μ— 남아 μžˆλ‹€. 즉, λ°μ΄ν„°μ˜ μ˜κ΅¬μ„±μ΄ 보μž₯λœλ‹€. Key-Value νŽ˜μ–΄μ˜ 객체 ν˜•νƒœλ‘œ 데이터 μ €μž₯.
  • Session Storage : μ„Έμ…˜ μŠ€ν† λ¦¬μ§€μ˜ λ°μ΄ν„°λŠ” μœˆλ„μš°λ‚˜ λΈŒλΌμš°μ € 탭을 닫을 경우 μ œκ±°λœλ‹€. Key-Value νŽ˜μ–΄μ˜ 객체 ν˜•νƒœλ‘œ 데이터 μ €μž₯.
  • Cookie : μ‹œκ°„ μ œν•œ μ„€μ • κ°€λŠ₯. μΏ ν‚€λŠ” ν”„λ‘ νŠΈ-λ°±μ—”λ“œ 톡신과 관련이 있음 >> μš©λŸ‰μ΄ μž‘μ„ 수 밖에 μ—†μŒ. Key-Value νŽ˜μ–΄μ˜ λ¬Έμžμ—΄ ν˜•νƒœλ‘œ 데이터 μ €μž₯(μ„Έλ―Έμ½œλ‘ μœΌλ‘œ ꡬ뢄). ν…μŠ€νŠΈ νƒ€μž…μ΄λΌ λ¬Έμžμ—΄λ§Œ μ €μž₯.
    β†’ κ·Έλž˜μ„œ split μ΄λΌλŠ” methodλ₯Ό μ΄μš©ν•΄μ„œ λ¬Έμžμ—΄μ„ μž˜λΌμ€€λ‹€.

❗️ λΉ„λ°€λ²ˆν˜Έμ™€ 같은 μ€‘μš”μ •λ³΄λŠ” μŠ€ν† λ¦¬μ§€μ— μ €μž₯ν•˜λ©΄ μœ„ν—˜ν•˜λ‹€. λ‘œμ»¬μŠ€ν† λ¦¬μ§€λ‚˜ μ„Έμ…˜μŠ€ν† λ¦¬μ§€λŠ” ν΄λΌμ΄μ–ΈνŠΈ μ‚¬μ΄λ“œ 이기 λ•Œλ¬Έμ— μ‰½κ²Œ ν•΄ν‚Ήλ‹Ήν•  수 있기 λ•Œλ¬Έμ΄λ‹€.
μ‚¬μ΄νŠΈ/μ„œλΉ„μŠ€μ˜ νŠΉμ„±, νšŒμ‚¬μ˜ 방침에 따라 user data λ₯Ό μ–΄λ–»κ²Œ 처리 ν•˜λŠ”μ§€ μ „λΆ€ λ‹€λ₯΄κΈ° λ•Œλ¬Έμ— μ„œλΉ„μŠ€ νŠΉμ„±μ΄λ‚˜ κΈ°νšμ— 맞게 μ μ ˆν•˜κ²Œ μ²˜λ¦¬ν•΄μ•Όν•œλ‹€.

profile
Becoming a front-end developer 🌱

0개의 λŒ“κΈ€