Node.js 16

[Node.js] HTTPS 서버 실행 시 XP IE8에서 접속 불가능한 경우

증상Node.js HTTPS 서버를 운영하고 있는데, Windows XP IE8 브라우저에서 접속이 안된다고 한다. 원인https 서버 옵션의 ciphers 항목을 지정하지 않을 경우, Windows XP IE8과 호환되지 않음. 대책1. ssl-config 모듈 설치npm install ssl-config --save 2. ssl-config 모듈을 intermediate 모드로 로드 var sslConfig = require('ssl-config')('intermediate'); 3. https 서버 옵션의 cipher 설정var options = { key: fs.readFileSync(path.resolve(__dirname, 'ssl/key.pem')), cert: fs.readFileSync(..

Node.js 2017.04.12

[node.js] querysting을 통한 form-data 파싱

POST로 전달된 form-data는 아래의 포맷을 따른다. ------WebKitFormBoundarypx8jEvVTBCRPDUzMContent-Disposition: form-data; name="foo" John------WebKitFormBoundarypx8jEvVTBCRPDUzMContent-Disposition: form-data; name="bar" 123456789 querysting 모듈을 사용해서 key와 value를 추출하고, value의 불필요한 문자열은 정규식 치환을 사용하여 제거한다. var http = require('http');var querystring = require('querystring'); function displayForm(res) { str = ''; str..

Node.js 2016.11.30

[node.js] 마지막 콜백에서 response하기

express의 res 파라미터를 마지막 콜백 함수에서 호출할 수 있도록 클로져를 활용한다. app.get('/server', function (req, res) { //-------------------(1) var req_id = uuid.v4(); var reqa = zmq.socket('req'); var reqb = zmq.socket('req'); var clear_resource = function() { reqa.close(); reqb.close(); clearTimeout(tid); } var tid = setTimeout(function(){ console.log('------zmq timeout------') res.sendStatus(408); clear_resource(); },..

Node.js 2016.05.09

[node.js] express 시작하기

Express 모듈 전역으로 설치C:\nodejs>npm install -g express Express Generator 모듈 전역으로 설치 Express 모듈을 사용하여 샘플 코드를 작성해주는 모듈이다. C:\nodejs>npm install -g express-generator Express 프로젝트 생성C:\nodejs>express example 의존성 수정 프로젝트에 필요한 모듈이 있다면 package.json 파일에 추가하여 설치하는 것이 관리면에서 좋다mongodb와 monk 모듈을 연습삼아 추가해보자. C:\nodejs\package.json{ "name": "dp", "version": "0.0.0", "private": true, "scripts": { "start": "node ./..

Node.js 2015.05.14

[node.js] AWS EC2에 node.js 설치

설치방법1sudo su wget http://nodejs.org/dist/v4.6.1/node-v4.6.1-linux-x64.tar.gztar zxvf node-v4.6.1-linux-x64.tar.gz cd ./node-v4.6.1-linux-x64cp -rf ./* /usrsource ~/.bash_profilenode -v 설치방법21. EC2 업데이트프롬프트가 뜨면 'y'를 입력$ sudo yum update 2. Node.js 설치Node 컴파일에 필요한 패키지를 먼저 설치하고 Github 저장소에서 Node를 내려받는다. sudo yum install gcc-c++ make sudo yum install openssl-devel sudo yum install git git clone git:/..

Node.js 2015.05.14

[node.js] Token 기반 인증

이 글은 Token-Based Authentication With AngularJS & NodeJS를 번역한 글입니다. 전통적인 인증 시스템 토큰 기반 인증 시스템을 설명하기 전에, 먼저 전통적인 인증 시스템을 살펴보자. 사용자는 username과 password를 로그인 폼에 입력하고 Login 버튼을 클릭한다.서버는 요청이 들어오면 DB를 쿼리하여 user를 검증한다. 만약 요청이 유효하면 세션을 생성하고 세션 정보를 Response 헤더에 포함시켜 반환한다.클라이언트는 제한된 end points에 접근할 때 모든 Request Header에 세션 정보를 포함시킨다. 만약 세션 정보가 유효하면 서버는 사용자가 특정 end point에 접근하는 것을 허용하고 렌더링된 HTML 내용을 반환한다. 여기까지..

Node.js 2015.05.09