node. js 와 express 프레임 워 크 학습

방문 하 다.http://nodejs.cn/api/상용 api 학습
server 폴 더 를 만 들 고 User. js 를 새로 만 들 고 기록 합 니 다.
module.exports = {
  userName: 'jack',
  sayHello: function () {
    return 'hello'
  }
}

같은 디 렉 터 리 에 demo. js 파일 을 만 들 고 기록 합 니 다.
let user = require('./User')
console.log(user.userName)

명령 행 node demo. js 를 통 해 이 파일 을 실행 할 수 있 습 니 다.
module. exports 는 기본 내 보 내기 에 해당 하 며 다음 방법 으로 내 보 낼 수도 있 습 니 다.
exports.userName = 'Ben'

httpserver 만 들 기
먼저 http 모듈 을 불 러 옵 니 다. http 를 통 해 서버 를 만 듭 니 다. 서버 에 리 셋 함수 가 있 고 요청 과 반환 이 있 습 니 다.
되 돌아 오 는 상태 코드 를 200 으로 설정 하고 돌아 올 때 브 라 우 저 에 hello node. js 를 표시 합 니 다.http://localhost:3000/저희 서버 에 접근 할 수 있 습 니 다.
let http = require('http')

let server = http.createServer((req, res) => {
  res.stautsCode = 200
  res.end('hello node.js')
})

server.listen(3000, '127.0.0.1', () => {
  console.log('        ')
})

url. parse 는 현재 요청 한 url 을 해석 할 수 있 습 니 다. util. inspect 는 url 대상 을 문자열 로 변환 할 수 있 습 니 다.
let http = require('http')
let url = require('url')
let util = require('util')

let server = http.createServer((req, res) => {
  res.stautsCode = 200
  let strUrl = util.inspect(url.parse(req.url))
  res.end(strUrl)
})

server.listen(3000, '127.0.0.1', () => {
  console.log('        ')
})

req. url 은 인터넷 주소 의 문자열 입 니 다.
url. parse 는 분석 한 후에 다음 과 같은 대상 이 되 었 습 니 다. 그러나 이 대상 은 표시 되 지 않 기 때문에 디 버 깅 할 때 util. inspect 가 문자열 로 바 꾸 어 디 버 깅 에 편리 하도록 해 야 합 니 다.
Url {
  protocol: null,
  slashes: null,
  auth: null,
  host: null,
  port: null,
  hostname: null,
  hash: null,
  search: null,
  query: null,
  pathname: '/',
  path: '/',
  href: '/' }

node 를 통 해 html 정적 페이지 불 러 오기
 같은 등급 디 렉 터 리 에 index. html 파일, server. js 파일 을 새로 만 듭 니 다.
fs 로 파일 읽 기
 url. parse (req. url) 는 대상 으로 해석 되 었 으 며, pathname 속성 은 index. html 파일 이름 입 니 다.
let http = require('http')
let url = require('url')
let fs = require('fs')

let server = http.createServer((req, res) => {
  let pathname = url.parse(req.url).pathname
  fs.readFile(pathname.substring(1), (err, data) => {
    if (err) {
      res.writeHead(404, {
        'Content-Type': 'text/html'
      })
    } 
    else {
      res.writeHead(200, {
        'Content-Type': 'text/html'
      })
      res.write(data.toString())
    }
    res.end()
  })
})
server.listen(3000, '127.0.0.1', () => {
  console.log('        ')

node 클 라 이언 트 로 제3자 인터페이스 방문
새 client. js 파일
let http = require('http')
let util = require('util')

http.get('http://www.imooc.com/u/card', (res) => {
  let data = ''
  res.on('data', (chunk) => {
    data += chunk
  })
  res.on('end', () => {
    let result = JSON.parse(data)
    console.log('result:' + util.inspect(result))
  })
})

Express 프레임 워 크 기반 운영 환경 구축
npm i -g express-generator

express --version     
exoress server  //     

server 에 의존 도 를 설치 하고 프로젝트 를 시작 합 니 다.
npm i

node bin/www

jade 를 html 로 바 꾸 지 않 고 views 의 모든 jade 파일 을 삭제 합 니 다.
설치
npm i ejs --save

app. js 에 가입
var ejs = require('ejs')   //    

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.engine('.html', ejs.__express)    //    
app.set('view engine', 'html');     //   !!!

그리고 집행 node bin / www 에 접근 할 수 있 습 니 다.http://localhost:3000/끝.

좋은 웹페이지 즐겨찾기