[Javascript] getElementById is not a function
·
프로그래밍/발생한 에러들
요즘 자바스크립트로 Component를 직접 구현하고 있다. 구글링으로 다들 어떻게 했는지 찾아보는데 다들 addEventListener를 사용할 때 querySelector를 사용하더라. "getElementById나 getElementsByClass는 왜 사용안하지...?" 라는 생각이 들어서 직접 사용해보았다. Uncaught TypeError: this.target.getElementById is not a function at Template.setEvent (Template.js:16) at new Component (Components.js:8) at Template._createSuperInternal (app.js:28) at new Template (Template.js:3) at in..
[Android] ViewBinding 을 써야하나..?
·
프로그래밍/기타
코틀린을 배워보며 안드로이드 앱을 만드는 와중에 기본으로 제공했었다는 kotlin-android-extensions 라는 플러그인이 더 이상 기본 제공이 되지 않는다고 한다. 그래서인지 자동으로 작동되지가 않더라. (처음에 이유를 몰라서 삽질 좀 함....) 구글링해보니 편하긴 하지만 좋은 플러그인이 아니라고 한다. (왜..?) 여튼... 안드로이드 4.1 버전부터는 'kotlin-android-extensions'가 기본적으로 제공되지 않는다고 한다. 왜 더 이상 사용하지 않을까? kotlin-android-extensions은 findViewById의 반복적인 작업을 제거하려고 만들어졌고, 내부적인 캐시를 통해 재사용성을 높인다고 한다. 하지만 RecyclerView의 ViewHolder에서는 그렇지..
[Android] E/net.daum.mf.map.n.api.NativeBaseNetConnection: Cleartext HTTP traffi
·
프로그래밍/발생한 에러들
카카오맵 API를 호출하면 아래와 같은 에러들이 뜬다. 구글링을 해본 결과 안드로이드P (api 28) 부터는 보안정책이 강화되어 HTTP 트래픽을 차단한다고 한다. 우리는 항상 에러 내용을 구글링하지만, 구글링하기 전에 에러 내용부터 파악할 필요가 있다. (요즘 특히 느낀다... 읽어보면 대강 파악이 됨) Cleartext HTTP traffic to ot1.maps.daum-img.net not permitted 음... Cleartext HTTP traffic이 허가되지 않았다고 한다. 그럼 뭐 허용해주면 될텐데, 찾아보니 이런 방법이 있다고 한다. 1. android:usesCleartextTraffic="true" AndroidManifest.xml의 에 android:usesCleartextT..
Cookie와 Web Storage
·
프로그래밍/Network
Cookie란? 서버가 사용자의 웹 브라우저에 전송하는 작은 데이터 조각이다. 브라우저는 그 데이터 조각들을 저장해 놓았다가, 동일한 서버에 재 요청시에 저장된 데이터를 함께 전송한다. 쿠키는 두 요청이 동일한 브라우저에서 들어와는지를 판단할 때 주로 사용하는데, 이를 이용하여 로그인 상태를 유지할 수 있다. 쿠키를 사용하는 목적 세션 관리 (Session Management) : 서버에 저장해야 할 로그인, 장바구니 등의 정보 관리 개인화 (Personalization) : 사용자 선호, 테마 등의 세팅 트래킹 (Tracking) : 사용자의 행동을 기록하고 분석하는 용도 과거엔 클라이언트 측에 정보를 저장할 때 쿠키를 주로 사용하였다. 하지만 지금은 Modern Storage APIs를 사용하여 정보..
[Android] 카카오지도 API 호출 시 앱이 꺼짐
·
프로그래밍/발생한 에러들
카카오 지도 API 호출 에러 안드로이드 앱 개발중에 카카오 지도 API를 호출하였는데 앱이 자꾸 종료되었다. 밑에서부터 주석처리하며 찾아보니 지도를 가져오기 위해서 MapView를 인스턴스화 시켜줘야하는데 여기서 실행이 중단되고 있었다. 근데 빌드를 봐도 아무 문제가 없다. 너무 잘 돌아가서 탈이다.... 뭐가 문제일까 싶었다가 해쉬값 찾을때 사용했던 Logcat을 한번 보았다. Logcat을 사용하자마자 바로 에러의 정체를 알았다... 요런 에러가 뜨는데 4번째 줄에 있는 UnsatisfiedLinkError를 구글링 해보니까 원인을 바로 찾았다. 결론 가상 에뮬레이터에서는 카카오지도 API가 호출되지 않는 것이었다. (...) 이거 하나 때문에 밤샜는데...ㅂㄷㅂㄷ 즉, AVD는 x86이므로... ..
티스토리에 Github commit contributions 출력하기, 깃허브에서 3d로 보기
·
카테고리 없음
티스토리 새단장을 하면서 장난질좀 해보았다. 내 깃허브 커밋 그래프를 티스토리에 표현해보고 싶었다. 그래서 구글링도 하며 찾아가며 만들어보았다. 총 2곳에 커밋 그래프를 넣어놓았다. (사이드바, 메인페이지) 위의 사진처럼 하기 위해서 두가지 API를 사용했다. github-calendar API (https://github.com/Bloggify/github-calendar) githubchart API (https://github.com/akerl/githubchart) 그리고 사용하지는 않았지만 이런 API도 있더라 https://github.com/bachvtuan/Github-Contribution-Graph 이걸 응용하면 엄청 멋지게 나오게 할 것 같은데... 이건 나중에 개선할 때 생각해보아야..
[Windows] Windows Terminal
·
카테고리 없음
윈도우에는 CMD와 Windows PowerShell라는 터미널 프로그램이 있다. 하지만 마이크로소프트 스토어에서 Windows Terminal이라는것이 있다는데 git bash 등 여러가지 터미널을 이 윈도우 터미널을 통해서 편하게 관리할 수 있다고 한다. 요즘 윈도우와 맥의 차이에 대해서 조금씩 관심을 가지고 찾아보기도 하는데 윈도우도 점점 개발자에게 친화적으로 바뀌어나가고 있다는 느낌이 든다. 안그래도 윈도우에 익숙한 나는 굳이 맥북을 사서 적응하기 보다는 이러한 것들을 사용해보면서 윈도우를 맥처럼 쓰면 어떨까 싶다. (물론 ios 개발은 안되지만...ㅠㅠ) 1. cmd 아마 윈도우 사용자들이라면 ipconfig 등 여러가지 명령어를 쓸 때 친숙한 그 터미널 프로그램이다. 하지만 cmd는 유닉스 기..
[Springboot] MediaType.APPLICATION_JSON_UTF8 is deprecated
·
프로그래밍/발생한 에러들
Springboot를 공부 중에 테스트코드를 돌리는데 에러가 떴다. 당연히 deprecated 된 코드를 사용했으니 에러가 뜨는것이다 ㅎㅎ... 스프링부트 2.2.*부터 MediaType의 UTF인코딩 상수는 depracated 됐다고 한다. MediaType.APPLICATION_JSON_UTF8을 MediaType.APPLICATION_JSON으로 바꿔주면 된다.
intellij output에서 한글 깨지는 현상
·
프로그래밍/발생한 에러들
테스트 코드를 작성하고 실행 시키는데 자꾸 한글이 깨지는 현상이 발생했다. 구글링하여 해결하였다. 맥이든 윈도우든 shift를 두번 누르면 검색창이 뜨는데 vm을 검색하면 아래와 같이 나온다. Edit Custom VM Options를 누르면 idea64.exe.vmoptions 라는 파일이 나오는데 맨 아래에 -Dfile.encoding=UTF-8 을 작성해주고 저장한다. 그리고 인텔리제이를 재실행하고 코드를 돌려보면 output에서 한글이 제대로 출력되는것을 확인할 수 있다.
(미해결)[Springboot] DefaultSerializer requires a Serializable payload but received an object of type
·
프로그래밍/발생한 에러들
Caused by: java.lang.IllegalArgumentException: DefaultSerializer requires a Serializable payload but received an object of type [com.jojoldu.book.springboot.config.auth.dto.SessionUser] at org.springframework.core.serializer.DefaultSerializer.serialize(DefaultSerializer.java:43) ~[spring-core-5.3.9.jar:5.3.9] at org.springframework.core.serializer.Serializer.serializeToByteArray(Serializer.java:..
JS, TS에 관하여 - 김민태의 프론트엔드 아카데미
·
Language/TIL
1. Javascript 변천사 1-1. Javascript 버전 1995년, 파이어폭스 브라우저의 전신인 NetScape 브라우저에 LiveScript라는 이름으로 처음 탑재됨 (초기에는 HTML을 간단하게 조작하기 위해 만들어진 프로그램이었다.) 1996년 8월, Internet Explorer에 Jscript라는 비슷한 기능의 스크립트 언어가 탑재됨. 1-2. ECMAScript 1997년, EcmaScript가 처음 나왔고 2009년까지 12년동안 EcmaScript5까지 버전 업데이트됨 2. 웹앱의 구성요소 2-1. 웹앱의 기본 구성요소 - HTML, CSS, Javascript HTML → 기본적인 UI를 만들어줌 CSS → 그 UI의 비주얼적인 요소들을 담당함 Javascript → 동적인,..
[Network] TCP/IP (1)
·
프로그래밍/Network
TCP/IP란? 데이터가 의도된 목적지에 닿을 수 있도록 보장해주는 통신 규약이다. TCP, IP 두가지의 프로토콜로 이루어져 있다. 프로토콜 : PC와 스마트폰 등이 통신하는 규칙 네트워크 아키텍처 : 복수의 프로토콜을 조합한 것 (네트워크 아키텍처는 우리가 사용하는 언어에 해당한다.) 현재는 TCP/IP만 거의 사용한다. TCP/IP의 계층구조 TCP/IP는 OSI 7계층 중 4계층으로 이루어져 있다. (7계층은 실무에서 사용하는 경우가 없으므로, 자세히 다루지 않겠다.) 웹 액세스의 프로토콜 조합 데이터를 전송하는 역할을 하는 계층 네트워크 인터페이스층 : 같은 네트워크 안에서 데이터를 전송하는 층 하나의 네트워크는 [라우터]와 [레이어2 or 3 스위치]로 구획하는 범위이다. - 인터넷층 : 네트..