본문 바로가기

전체 글

(105)
document.querySelectorAll(...).forEach 오류 자바스크립트 오류 querySelectorAll은 NodeList를 반환하는데, 일부 브라우저(라고 쓰고 IE라고 읽는다)에서 안된다. 해결: Array.prototype.slice.call을 사용하여 오류를 회피한다. 다음 문서를 참조하자. Array.prototype.slice.call(document.querySelectorAll('.className')).forEach( function () { // ... }); MDN Web Docs - NodeList.prototype.forEach()
게시판 내용에서 HTML 태그 제외하고 검색하기 요약: 정규식으로 HTML 태그를 삭제하고 검색한다. 사용자의 눈으로 게시판 글 등록 시 위지윅 HTML 에디터 (summernote, CK Editor, 네이버 스마트에디터 등)를 사용해서 글을 등록하면 (당연하게도)HTML이 함께 저장된다. 에디터에 따라 내용도 함께 저장되는 경우도 있다. 개발자가 보기에는 너무나 당연하지만, 사용자가 보기에는 내용에 안보이는 것이 검색되면 오류라고 생각한다. 예를 들어 line_friends.png를 에디터의 이미지 첨부했다. 저장된 콘텐츠는 다음과 같다. 라인 캐릭터 졸귀탱! friend라는 단어로 검색했다. 사용자가 보기에는 라인 캐릭터 졸귀탱! 밖에 안 보이는데 해당 게시물이 검색된다. 태그 지우고 텍스트 내용만 보기 HTML을 제외하고 게시물을 보기 위해 정..
Spring Boot, 파일 업로드 용량 설정 FileUploadBase$SizeLimitExceededException Spring Boot 에서 파일 업로드를 하다가 오류가 나서 콘솔을 보니 용량 제한이 있었다. 프로필에서 maxFileSize를 설정해주면 되는데, 주의할 점은 maxRequestSize도 설정이 필요하다. Spring Boot 1.3.x and earlier multipart.maxFileSize multipart.maxRequestSize Spring Boot 1.4.x and 1.5.x spring.http.multipart.maxFileSize spring.http.multipart.maxRequestSize Spring Boot 2.x spring.servlet.multipart.maxFileSize spring.serv..
자바스크립트 클립보드 복사 (라이브러리 없이) 자바스크립트 클립보드 복사 원리: 더미 텍스트상자를 만들어 복사한다. 클립보드 복사
Tomcat 8 / tomcat rfc 7230 rfc 3986 오류 톰캣의 특정 버전부터는 RFC 7230, RFC 3986에 의해 특수문자를 URI에 허용하지 않는다.따라서 GET으로 던지던 많은 파라미터에서 문제가 생길 수 있다.회사에서 되던게 집에서는 안되길래 크롬 개발자도구 네트워크 탭을 보니, URL Encoded 된 Query String에서 [ ] 등의 특수문자가 보였다. 400오류가 발생했고, 서버 콘솔에는 rfc 7230 and rfc 3986 관련 메시지가 떠있었다. 파라미터를 encodeURI 해서 던지거나 톰캣의 server.xml 옵션을 수정해주어야 한다.나는 회사에서 잡은 개발환경에 맞추기 위해 후자를 택했다. 톰캣 conf/server.xml의 Connector에 다음 부분을 relaxedQueryChars 옵션을 추가해주면 된다.
윈도10 Bash에서 C드라이브 접근하기 매우 간단하다. 하지만 까먹어서 메모 ㅠㅠ cd /mnt/c
React 공식 사이트, 문서, 튜토리얼 한글 번역 (React, React.js, React korea) React 한글 사이트 이전 프로젝트에서 Vue를 임베딩 식으로 써보고, Vue로 SPA를 만드는 지금 프로젝트에 들어와 8개월이 흘렀다. 다음 프로젝트는 React와 Vue 중에 고민 중이라서, 내가 먼저 React를 체험해보기로 했다. Vue를 처음 배울 때는 인프런에서 구입해두었던 뷰 강좌를 한번 쭉 듣고 잘 번역된 뷰 공식 문서를 몇 번 읽어보니 어렴풋이 감이 왔다. 물론 개발에 들어가자 아주 간단한 문제조차 난관에 부딪혔지만...어쨌든 잘 번역된 한글 문서는 새로운 기술을 접할 때 가장 큰 허들인 영어의 장벽을 없애주었다. React는 Vue에 비해서 훨씬 큰 커뮤니티를 가지고 있으니까, 당연히 잘 번역된 한글 사이트가 있을 줄 알았다. 그런데 며칠 내내 찾아봐도 없었는데, 아주 우연히 발견하게..
MySQL / You can't specify target table 'TABLE' for update in FROM clause MySQL / You can't specify target table 'TABLE' for update in FROM clause 데이터 때문에 생긴 오류로 의심되서 업데이트를 쳐보는데 MySQL 에러가 떴다. 쿼리도 매우 단순하기 그지 없는데 뭘까? update TABLE_NAME set COL_NAME = (select COL_NAME from TABLE_NAME where COL_ID = 882825) where AR_ID = 986178; 혹시나 서브쿼리에 alias를 줘야하나 싶어서 넣어 봤는데도 안된다. 검색을 해보니, 서브쿼리를 한번 더 감싸줘야 한단다. 오라클에서는 상관 없던 건데 MySQL로 넘어오니 이렇게 사소하게 다른 점이 많다. update TABLE_NAME ..