-
导入模块
import * as http from http -
创建服务体对象
const server =http.createServer((request,response)=>{response.end(<data>) //设置响应体let <data>:string // 用来储存请求数据// 绑定data事件request.on('data', <chunk> =>{<data> += <chunk>})//可以用url模块解析链接各个部分// 绑定 end 事件request.on('end',() => {// 响应// 响应状态码response.statusCode = <code>// 响应状态描述response.statusMessage = '<str>'// 响应头response.setHeader('<key>','<value>')response.setHeader('<key>',['<value1>','<value2>'])// 可以设置多个同名响应头// 响应体response.write('<content>') //可选,可写多个response.end("<content>")// 必须,只能写一个})}) -
监听端口,启动服务
server.listen(<port>,()=>{}) -
设置
响应头
-
content-type
-
mine
默认有mine嗅探功能
html:'text/html',css:'text/css',js:'text/javascript',png:'image/png',jpg:'image/jpeg',gif:'image/gif',mp4:'video/mp4',mp3:'video/mpeg'json:'application/json'对于未知资源类型,可以选择
application/octet-stream
类型,浏览器遇到该类型会进行独立储存,俗称下载
-
get和post请求的区别
- get获取数据,post请求数据
- get将请求参数加到URL后,post放在请求体中
- post相对比get安全,因为会将请求参数放在地址栏中
- GET请求大小有限制,一般为2KB,POST没有限制