02 Obtener el navegador obtener/publicar solicitud de aprendizaje de data-node.js

Obtenga datos de solicitud de obtención/publicación en node.js

servidor.js

//导入所需模块
const http = require("http");
const url = require("url");
const qs = require("querystring");

//创建server
http.createServer(function (request, response) {
    
    
  //排除访问favicon.ico图标的请求
  if (request.url != '/favicon.ico') {
    
    
    //这里不做路由校验且不判断请求文件类型。
    response.writeHead(200, {
    
    
      'Cotent-Type': 'text/html;charset=utf-8'
    });
    //获取请求方式
    let method = (request.method).toUpperCase();

    //根据不同的请求方式进行不同的处理
    if (method == 'GET') {
    
    
      doGet(request, response);
    } else if (method == 'POST') {
    
    
      doPost(request, response);
    } else {
    
    
      //处理其他类型请求
    }
  }
}).listen(8080); //监听端口8080

//处理get请求方法
function doGet(request, response) {
    
    
  let query = url.parse(request.url, true).query;
  handle(query, response);
}

//处理post请求方法
function doPost(request, response) {
    
    
  let postData = "";
  //post数据一般较大,做异步处理
  request.on("data", function (data) {
    
    
    postData += data;
  });
  //监听数据读取完毕事件
  request.on("end", function () {
    
    
    //qs.parse可以解析url查询字符串
    postData = qs.parse(postData);
    handle(postData,response);
  });
}

//直接把browser提交的数据返回
function handle(data, response) {
    
    
  let msg = JSON.stringify(data);
  response.end(msg);
}
  • Módulo de cadena de consulta : El módulo de cadena de consulta proporciona utilidades para analizar y formatear cadenas de consulta de URL. Documentación oficial

Supongo que te gusta

Origin blog.csdn.net/qq_44856695/article/details/105125372
Recomendado
Clasificación