본문 바로가기

개발 이모저모

(60)
Node.js 란? ( 소개 및 특징 ① 편 _ 자바스크립트 런타임) ▶ Node.js란 ? 크롬 v8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 언어로 작성언어는 자바스크립트를 활용했다. 특징으로는 싱글스레드 이벤트루프와 논블로킹 I/O모델로 높은 처리성능을 가지고 있다. 또한, 내장 HTTP서버 라이브러리를 포함하고 있어서 웹서버에서 아파치 등과 같은 별도로 설치하지 않아도 동작할 수 있다. - 공식 사이트 : https://nodejs.org/ko/about/ - 위키백과 : https://ko.wikipedia.org/wiki/Node.js ▶ Node.js의 특징 - 자바스크립트 런타임 (런타임이란? 특정언어로 만든 프로그램들을 실행할 수 있는 환경을 의미한다) 노드는 자바스크립트 프로그램을 컴퓨터에서 실행할 수 있게 해준다. 기존 자바스크립트는 브라우저 위..
setTimeout / clearTimeout 일정 시간 뒤에 원하는 동작을 할 때는 setTimeOut을 쓰면 된다. setTimeout 함수는 일정시간이 지난 후 함수가 한번 실행되고, clearTimeout 함수는 setTimeout함수를 취소하는 역할을 한다. *사용예제 - 일정 시간 뒤 로그아웃 처리할 때 - 몇초뒤에 이벤트 팝업을 띄울 경우 * setTimeout 함수 setTimeout( [함수 또는 문자열], [ 지연될 시간 ] , [인자1], [인자2], . . . ); 1. [함수 또는 문자열] 실행하려고 하는 코드로 함수자체를 넣거나, 함수명(문자열)을 입력한다. 보통 함수가 들어가고 호환성때문에 문자열도 받을 수 있지만 추천하지 않는다고 한다. 2. [지연될 시간] 실행 전 대기시간으로 입력한 시간만큼 지연되었다가 실행되는 것이..
CentOS7 Node.js 설치 CentOS docker 이미지를 컨테이너로 생성해서 Node.js를 설치했다. Node.js를 설치하면 npm도 같이 설치된다. (npm : Node Package Manager로 기본 패키지 관리자) 1. yum update하기 yum -y update (최고권한으로 설치할 경우, sudo yum -y update) 2. NodeSource(회사)는 효율적인 노드 서비스를 제공하고 리눅스용 Node.js저장소가 있는지 확인한다. CentOs서버에서 NodeSource저장소를 사용해 Node.js와 npm을 설치하는데 도움이 된다. setup_12.x는 12버전을 설치할 경우이다. 예를들어 8, 10버전이 필요할 경우에는 setup_8.x 혹은 setup_10.x로 넣고 명령어를 실행하면 된다! cur..
MySQL CASE 문법 MySQL DB를 쓰면서 쿼리에서 조건문을 사용하고 싶을 때 쓰면 된다. 프로그래밍에서의 IF문이나 Switch문처럼 쿼리에서 사용할 수 있는 문법이다. - CASE 문법 사용방법 CASE when 조건1 then 결과값1 when 조건2 then 결과값2 when 조건3 then 결과값3 when 조건4 then 결과값4 else 결과값5 END when 뒤에 조건 then 다음 원하는 결과값을 쓰는데, 조건이 True이면, 읽기를 중지하고 결과값을 반환하고 조건이 False이면 다음 조건으로 넘어가거나 Else절의 값을 반환한다. 만약, Else부분이 없거나 모든 조건이 True가 아니면 NULL을 반환한다! 예제!! 현재 SELECT를 다음과 같이 QUERY를 써서 조회했을 때 결과가 나온다. SE..
PayloadTooLargeError: request entity too large Postman에서 API테스트 하면서 발생한 문제이다. POST인 API를 호출하기 위해서 body에 request json내용을 넣고 실행했는데, request가 너무 크다는 오류가 났다. 결론적으로 말하면! body-parser가 읽을 수 있도록 허용한 데이터의 크기보다 컸을 때 파싱을 할 수 없어서 나타난 문제이다. 현재 Node.js에서 express프레임워크를 사용하고 있는데, 이때 request의 내용을 받아서 파싱하고, router에서 받은 데이터를 사용할 수 있도록 body-parser를 쓰는데, 파싱할 수 있는 데이터의 크기보다 커서 오류가 난것이다. 이렇게 옵션을 추가하면 허용 데이터 크기를 늘려서 에러를 해결 할 수 있다!! const express = require('express'..
python flask response base64 flask에서 이미지를 jpeg나 png로 return하는 것이 아니라 base64로 return하는 부분이 필요했다. from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas 라이브러리를 import하여 값에 따라 그래프를 그렸고, 이 이미지를 base64로 응답 해주는 부분이다. output = io.BytesIO() FigureCanvas(fig).print_png(output) return base64.b64encode(output.getvalue())
오라클 12c JSON 컬럼 Column타입을 VARCHAR2로 하고 Length 4000으로 한다. 그리고 제약조건(constraint)에서 type을 Check로 하고, 컬럼명 IS JSON으로 하면 된다! (예시 : 컬럼명 : MENU_NAME) CONSTRAINT MENU_NAME_CHECK CHECK (MENU_NAME IS JSON)
Mix Content란? https를 통해 접속한 웹페이지에서 http통신으로 자원을 요청하면서https로 요청한 자원과 http로 요청한 자원이 섞여오류가 나는 것 이다.보안적으로 위험하기 때문에 오류가 나는 것이다!   참고블로그 :https://dololak.tistory.com/611