본문 바로가기

SCRIPT

[NODEJS] NPM 버전 에러 : npm does not support Node.js nodejs 버전을 최신화하게 될 경우에, ( 또는 어떠한 경우에라도 ) NPM 버전과 NODEJS 버전이 맞지않아서 아래와 같은 에러가 발생하면서, NPM 관련 작업이 진행되지 않는 것을 확인할 수 있는데, 버전이 안맞는 문제이므로, 버전을 맞추어 주어야 한다. 1. nodejs 완전 삭제 후, 재설치 > 라는 아주 단순하면서, 깔끔한 방법이 있다. 하지만 위와 같은 방법을 쓰지 않고, 아래의 방법으로, 진행할 수 있다. 2. NPM 명령어가 동작하지 않는 상황에서 NPM 으로 업데이트 하기. > 이미 npm 버전이 맞지않아서, 아래의 명령어에도 위와같은 버전이 맞지 않는다는 에러가 발생한다. npm install -g npm@latest 그런 상황일때, 윈도우 기준 : C:\Users\qwer\App.. 더보기
[NodeJS] Error: EPERM: operation not permitted, ... [NodeJS] Error: EPERM: operation not permitted, ... npm install 로 모듈 최신화 및 인스톨을할때 발생할 수 있는 에러이다. 해당 에러는 파일이 읽기전용이되거나, 잠긴 현상으로 인한 문제로. --force 옵션을 이용해 해당 문제를 해결 할 수 있다. npm install --force https://stackoverflow.com/questions/39293636/npm-err-error-eperm-operation-not-permitted-rename npm ERR! Error: EPERM: operation not permitted, rename When I execute npm install I get this error npm ERR! Error:.. 더보기
HighChart - X 축 라벨링 커스터마이징 하이차트 가이드 원문 : https://api.highcharts.com/highcharts/xAxis.tickPositions Highcharts API Option: xAxis.tickPositions An array defining where the ticks are laid out on the axis. This overrides the default behaviour of tickPixelInterval and tickInterval. api.highcharts.com https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/xaxis/tickpositions-tickpositioner.. 더보기
[Nodejs] Express Middleware 유형 Express Node.js 웹 프레임워크. Web Application 이나 API 서비스 개발을 위해 설계되었으며, 가장 많이 사용되는 웹 프레임워크 중 하나. * Koa 등의 다양한 웹 프레임워크가 존재하며, 필요와 선택에 따라서 웹 프레임워크를 사용하면 될 것 같다. MiddleWare 네트워크를 통해서 연결된 여러개의 컴퓨터에 있는 많은 프로세스들에게 어떤 서비스를 사용할 수 있도록 연결해주는 소프트웨어. * 웹 서비스 기준으로 쉽게말해서 [ 클라이언트 - 미들웨어 - 서버 ] 사이에서 데이터를 읽고, 쓰고, 처리해주는 중간 역활을 하는 소프트웨어라고 볼 수 있겠다. Express는 자체적인 최소한의 기능을 갖춘 라우팅 및 미들웨어 웹 프레임워크이며, Express 애플리케이션은 기본적으로 일련.. 더보기
[NODEJS] Express Header 정보 숨기기 Express 모듈은 Nodejs 개발에서 빠질 수 없는 웹 프레임워크이다. 거두 절미하고 본문을 이야기해보자면, 아래의 예시를 보면 될 것 같습니다. Express 에서 X-Powered-By 를 통해서, 사용자들은 쉽게 이 서비스는 어떤 웹 프레임워크와 기술을 이용해서 개발되었구나~ 하고 아주 쉽게 잘 표현해주고 있다. 사실 일반사용자에게는 보여줄 필요없는 항목이기도하며, 저 항목을 유심히 보는 사람이 이 시스템을 개발한 개발자는 아닐테니, 공격자에게는 침투하기 좋은 힌트가 될 수 있을 것이다. 모든 소스와 로직은 클라이언트에서 보여주지 않는 것이 바람직하니, 해당 정보를 숨기도록 하겠습니다. // X-Powered-By 막기 app.disable('x-powered-by'); 위의 한줄로, 해당 정.. 더보기
[NODEJS] http 접속 https 로 Redirect 처리 HTTPS 프로토콜 권장에 따라, HTTPS 사용은 이제 선택이 아닌 필수인 경우가 많습니다. 따라서 HTTP 접속을 HTTPS 로 리다이렉트 처리해줄 필요가 있습니다. Apach 나 nginx 와 같은 웹서버에서 http , https 를 제어하지 않고, was 서버에서 제어하는 방법은 아래와 같습니다. app.use(function(req, res, next){ if(!req.secure){ res.redirect("https://"+ 도메인 + req.url); }else{ next(); } }); 원리는 간단합니다. 모든 접속에 대해, secure 접속 여부를 확인하고, 아닌 경우 https 경로로 리다이렉트 시켜주는 방법 입니다. 위의 코드는 미들웨어 생성시 최상단에 작성되어야 합니다. 더보기
[NODEJS] 결제 API 연동하기 - 아임포트 웹 개발시, 결제가 필요할때, PG사 연동등, 결제 처리에 대한 프로세스가 필요한데, 아임포트는 이를 지원해주고, 편리하게 사용할 수 있도록 하는 API 제공 서비스이다. 먼저, 아임포트 공식 사이트이다. ( https://www.iamport.kr/ ) 장점으로는, 다양한 개발 언어를 제공하며, 다양한 PG 사를 지원해준다는 점. 그리고, 글 작성일자 기준으로, 1개의 PG사 연동은 평생 무료 제공한다는 점이 메리트 있다. 아임포트 홍보글이 아니므로, 여기까지만 적어보도록 하고, 바로 연동을 해보도록 하자. 먼저, 기본 사용방법 , 환경설정의 경우 아임포트 홈페이지에 잘 알려주고 있으며, 기술지원 속도도 빠른편으로 보인다. 필요시에는 전문 아임포트 개발자들에게 문의하는게 좋은 방법. 1. REST AP.. 더보기
[nodejs] Linux (Centos6.x ) 에 최신버전 Nodejs 설치하기 Centos 6 에서 Nodejs 를 yum 을 이용해서 설치하게 되면, 아~주 예전버전의 Nodejs 를 설치하게 되는데, 이번 포스팅에서는 Yum 저장소에 최신 버전을 설정하여, 다운받고 설치하는 방법에 대해 포스팅하겠습니다. 1. nodejs , npm 설치 상태 확인 2. Yum 저장소에 nodejs 버전 추가 yum install -y gcc-c ++ make curl -sL https://rpm.nodesource.com/setup_12.x | sudo -E bash - 3. yum install nodejs -y 4. 설치완료 설치가 완료되었음을 확인할 수 있습니다. 더보기
[JAVASCRIPT] VAR , CONST , LET 의 차이점 ? [JAVASCRIPT] VAR , CONST , LET 의 차이점 ? 1. var ( Function - Level Scope ) 함수레벨 스코프는 함수내에서 선언된 변수는 Function 내부에서만 유효하며, 외부에서는 참조가 불가능하다. 함수 외부에서 선언한 변수의 경우에는 전역변수로 선언된다. function funcA(){ var a = 10; console.log("1 : " + a); } funcA(); console.log("2 : " + a); // console 1 : 10 ReferenceError: a is not defined 함수 레벨 스코프 예시 var 선언은 ES5 까지 변수를 선언할 수 있는 유일한 방법이였습니다. 다른 프로그래밍 언어에서 INT, STRING, CHAR 등의.. 더보기
[NODEJS] fs 파일시스템 모듈 [NODEJS] fs 파일시스템 모듈 NodeJS 를 이용하여 개발을 할 때, 생각보다(?) 자주, 잊을만 하면 사용하게 되는 파일시스템 (fs) 모듈입니다.그래서 이참에 자주 쓰는 함수를 정리해볼까합니다.( 공식 모듈 설명 URL : https://nodejs.org/api/fs.html ) fs (파일시스템) 모듈' fs 모듈은 표준 POSIX 기능을 근사하게 모델링 한 방식으로 파일 시스템과 상호 작용하기 위한 API 를 제공 ' 하기 위한 목적을 가진 모듈 0. 시작하기 무슨 모듈이든 사용하려면, 설치를 하고, 모듈을 선언을 해주어야겠지요. fs 모듈은 기본 제공되는 모듈이므로 설치는 필요하지 않습니다.fs 모듈을 선언해주고 시작합니다. var fs = require('fs'); 모든 파일 시스템.. 더보기