el desarrollo del lado del servidor Node.js de pre-conocimiento de aprendizaje

Introducir la URL del navegador para mostrar la página de todo el proceso

  • Después de nombres de dominio DNS resuelve en una dirección IP, la dirección IP correspondiente a un servidor, establecer una conexión TCP entre el cliente y el servidor (tres vías), el cliente envía una solicitud HTTP

  • http servidor recibe la solicitud, y el proceso vuelve

  • El cliente recibe los datos de retorno reprocesamiento de datos (como la renderización de páginas, js de ejecución)

La diferencia entre el servidor de desarrollo y el desarrollo de front-end

  • servicio de Estabilidad

    • extremo del servidor puede sufrir de varios ataques maliciosos y el mal uso

    • Un solo cliente puede colgar accidentalmente, pero el servicio no termina

    • El proceso de aprender a utilizar PM2 hacer demonio (proceso se reiniciará automáticamente una vez que cuelgue sin intervención manual)

  • Considere la memoria y la CPU (optimización, ampliación)

    • El cliente únicamente un navegador, la memoria y la CPU no es un problema

    • Para llevar a muchas peticiones del lado del servidor, CPU, memoria y recursos son escasos

    • Aprender a utilizar este registro de corriente, este método de registro es resolver la CPU y la memoria, es un programa de optimización

    • La sesión de almacenamiento redis estudio utilizado, es un método para el lado del servidor extensión capacidad de soporte

  • tala

    • Front-end se involucrará a escribir el registro, pero sólo ingrese iniciador, sin los cuidados de seguimiento

    • Para finalizar servidor

      • tala
      • registros de almacén
      • análisis de registros
    • El estudio de diversos métodos de registro, sino que también aprenden a analizar el registro

  • seguridad

    • del lado del servidor preparado para recibir una variedad de ataques maliciosos, y mucho menos el extremo distal, tal operación no autorizada, a ataques de base de datos

    • El estudio de validación de inicio de sesión, prevenir ataques XSS y SQL injection

  • Clusters y servicio de Split

    • Si la velocidad de desarrollo de productos, el tráfico aumentará rápidamente, tenemos que considerar la realización de un gran caudal a través de la máquina de expansión y la forma de división de servicios

    • Este estudio es un desarrollo autónomo, pero se separó de los servicios de apoyo de diseño

interfaz de desarrollo nativo Node.js recibe y procesa las solicitudes de manera http

  • obtener la solicitud y la cadena de consulta

    • Ese cliente le gustaría obtener los datos del lado del servidor, tales como la lista de consultas del blog

    • Para pasar datos, tales como por a.html cadena de consulta? A = 100 y B = 200

    • acceso directo al navegador envía una solicitud para obtener

  • solicitud POST

    • Para enviar una solicitud que es la transferencia de datos cliente-servidor, como por ejemplo el nuevo blog

    • La transferencia de datos personalizada estudio Postdatum

    • Que los navegadores no pueden simular, la simulación puede ser usada cartero

      • Cartero puede optar por instalar el plug-in, compacto y ligero Google, la búsqueda aparecerá cartero cromo CRX tutorial de instalación

      • También se pueden utilizar en la página oficial del cartero de instalación de aplicaciones de cartero

  /**
  * Node.js处理Http请求的综合Demo
  * Node.js符合CommonJs模块化规范
  */

  const http = require('http'),
    querystring = require('querystring');

  http.createServer((req, res) => {

    // 数据格式
    console.log('content-type: ', req.headers['content-type']);

    const method = req.method,
      url = req.url,
      path = url.split('?')[0],
      query = querystring.parse(url.split('?')[1]);

    // 设置返回字符串的格式为json
    res.setHeader('Content-type', 'application/json');

    // 返回数据
    const resData = {
      method,
      url,
      path,
      query,
    }

    // 返回数据
    if (method === 'GET') {
      res.end(JSON.stringify(resData));
    }
    if (method === 'POST') {
      let postData = '';
      req.on('data', chunk => {
        postData += chunk;
      });
      req.on('end', () => {
        resData.postData = postData;
        res.end(JSON.stringify(resData));
      });
    }

  }).listen(3000, () => {
    console.log('running at port 3000.');
  });
Publicado 49 artículos originales · ganado elogios 29 · vistas 1870

Supongo que te gusta

Origin blog.csdn.net/Brannua/article/details/105087923
Recomendado
Clasificación