zoukankan      html  css  js  c++  java
  • JS_URL模块

    base

    url.parse():将url字符串转换为url对象

        =第二个参数为true, query被转换为了一个对象

    url.format():将url对象格式化为url 字符串

    url.resolve():用于解析,接受两个参数,拼接


    简单用户管理系统剖析:

    【1】单独封装操作数据库js文件

    //监听请求事件

    require('./model/index.js');

    const Student = require('./model/student.js');


    页面重定向:

    //重定向到/list页面

    res.writeHead(301, {

    Location: '/list'

                });

    form表单的Post请求:

    //获取表单数据

    req.on('data', param => {

    formData += param;

            });

    //字符串数据解析成对象

    let student = qs.parse(formData);


    区分post与put请求:

    form表单的实际应用:当提交表单时,向何处发送表单数据。

    <form method="post" action="/add">

    <input name = "age" value="${student.age}" type="text" class="form-control" placeholder="请输入年龄">

    PUT方法是幂等的:连续调用一次或者多次的效果相同(无副作用)。连续调用同一个POST可能会带来额外的影响,比如多次提交订单。

    一个 POST 请求通常是通过 HTML 表单发送, 并返回服务器的修改结果. 在这种情况下, content type 是通过在 <form> 元素中设置正确的 enctype 属性, 或是在 <input><button> 元素中设置 formenctype 属性来选择的:

    • application/x-www-form-urlencoded: 数据被编码成以 '&' 分隔的键-值对, 同时以 '=' 分隔键和值. 非字母或数字的字符会被 percent-encoding: 这也就是为什么这种类型不支持二进制数据(应使用 multipart/form-data 代替).
    • multipart/form-data
    • text/plain

    当 POST 请求是通过除 HTML 表单之外的方式发送时, 例如使用 XMLHttpRequest, 那么请求主体可以是任何类型.按HTTP 1.1规范中描述,POST为了以统一的方法来涵盖以下功能:

    • 注释已有的资源
    • 在公告板,新闻组,邮件列表或类似的文章组中发布消息;
    • 通过注册新增用户;
    • 向数据处理程序提供一批数据,例如提交一个表单;
    • 通过追加操作,扩展数据库数据.


    操作数据库的异步操作

    let student = await Student.findOne({ _id: query.id });

    await Student.findOneAndDelete({ _id: query.id });

    await Student.create(student);

  • 相关阅读:
    MySQL 替换和截取指定位置字符串
    notepad++安装XML格式化插件
    个人信用报告,长啥样?怎么查?
    MySQL 查询decimal字段去除自动补零
    mapstruct使用详解
    电商物流行业中的RDC、FDC和TDC分别表示什么意思?发网详解
    借助Proxifier实现内网访问
    C++源码流程图分析!
    FFmpeg中AVPacket处理函数av_free_packet()和av_packet_free()的区别以及用法
    fopen 和它的读写标识 r、r+、rb+、rt+、w+.....
  • 原文地址:https://www.cnblogs.com/macro-renzhansheng/p/13055851.html
Copyright © 2011-2022 走看看