# HTTP & Url

  • 概述:创建服务对象createServer()
const http = require('http')

const serve = http.createServer((request, response) => {
  // do something...
  // 设置 utf-8 的响应头
  response.setHeader('content-type', 'text/html;charset=utf-8')
})
server.listen(8080, () => {
  console.log('service start success...')
})

# 获取 http 请求报文内容

  • 获取请求的方法:request.method
  • 获取请求的url:request.url。不包含协议、域名、端口。
  • 获取请求的http协议版本: request.httpVersion
  • 获取请求头:request.headers
  • 获取请求体:通过request.on方法,监听data事件。
const http = require('http')
// 创建对象
const serve = http.createServer((request, response) => {
  const method = request.method // GET | POST | PUT
  const url = request.url
  request.on('data', chunk => {
    console.log(chunk)
  })
})
server.listen(8080, () => {
  console.log('service start success...')
})

# htttp 响应报文

const http = require('http')
// 创建对象
const serve = http.createServer((request, response) => {
  response.statusCode = 200 // 设置响应状态码
  response.statusMessage = 'not found' // 设置响应描述
  response.setHeaders('content-type', 'application/json;charset=utf-8') // 设置响应头
  // 设置响应体
  // 方法1
  response.write('lover')
  response.write('lover')
  response.write('lover')
  response.end()
  // 方法2
  response.end('lover')
})
server.listen(8080, () => {
  console.log('service start success...')
})

# Url

const http = require('http')
const url = require('url')
// 创建对象
const serve = http.createServer((request, response) => {
  // 方法1
  const url = url.parse(request.url, true)
  // 方法2
  const url = new URL(request.url, 'http://127.0.0.1')
})
server.listen(8080, () => {
  console.log('service start success...')
})