美文网首页
表单处理

表单处理

作者: 秋枫残红 | 来源:发表于2017-09-09 19:55 被阅读0次

get方法

app.get('/login',function (req,res) {
    console.log(req.query.account);
    console.log(req.query.password);
    ......
    //存入数据库
    ......
    //从定向页面
    res.send();
});
  • 需注意的是该方法会重新定向页面,可返回一HTML页面提示用户成功或失败,不过该方法会在用户刷新页面时发出警告,且影响到回退按钮与历史记录,因此不推荐使用。
  • 我们知道的是get方法传送数据是是将数据保存在请求头中,直接跟在URL之后,因此长度有限制,一般不能超过1024B,所以一般不使用该方法发送表单数据。

post方法

  • 我们知道的是post方法将数据存储在请求体(body)中,我们无法直接读取该数据,因此我们需引入一个中间件 body-parser,
    npm install --save body-paser
    并于使用post方法之前引入
app.use(require('body-parser')());
app.post('/login', function (req, res) {
        console.log(req.body.account);
        console.log(req.body.password);
        ......
        //存入数据库
        ......
        //从定向页面
        res.send();
})
  • 需注意的是该方法也会重新定向页面,可返回一HTML页面提示用户成功或失败,不过该方法会在用户刷新页面时发出警告,且影响到回退按钮与历史记录,因此不推荐使用。

使用Ajax方法异步发送表单数据(常用)

  • 该方法与上面提到的两种在接收数据上完全一样,在服务端只是添加一判断保证数据是以Ajax方法发送过来的
app.use(require('body-parser')());
app.post('/login', function (req, res) {
    if (req.xhr || req.accepts('json,html') == 'json') {
        console.log(req.body.account);
        console.log(req.body.password);
        res.send({type: 'login', status: 'scuess'});
    }
    else {
        res.send({type: 'login', status: 'error'});
    }
});
  • 该方法由于其异步的性质不会重载前端页面,比较常用。

HTML表单文件上传

  • 上传时需设置表单属性enctype="multipart/form-data"
    <form action="http://127.0.0.1:3000" class="col-md-4 col-md-offset-4" enctype="multipart/form-data" method="post">
        <div class="form-group">
            <label for="file" class="control-label">上传文件</label>
            <input type="file" name="file" id="file">
        </div>
        <div class="form-group">
            <input type="submit" name="submit" class="btn btn-default btn-block">
        </div>
    </form>
var formidable = require('formidable');
app.post('/', function (req, res) {
    var formdata = new formidable.IncomingForm();
    formdata.parse(req, function (err, filed, files) {
        console.log(files);
    });
});

相关文章

  • js事件入门(4)

    4.表单事件 表单事件处理主要用来验证表单,可以处理用户在表单上所做的任何操作。 #4.1.onsubmit事件 ...

  • 《Flask Web开发实战》—— 表单

    Flask关于表单处理的部分,使用Flask-WTF库,首先安装 1. 表单的基本处理 Flask中表单的基本处理...

  • 表单 - 提交按钮

    定义用于向表单处理程序(form-handler)提交表单的按钮。表单处理程序通常是包含用来处理输入数据的脚本的服...

  • Angular

    Form 表单 在开始看angularjs如何处理表单前, 我们先想想处理表单时可能遇到的问题 如何数据绑定 验证...

  • 表单处理

    get方法 需注意的是该方法会重新定向页面,可返回一HTML页面提示用户成功或失败,不过该方法会在用户刷新页面时发...

  • 表单处理

    一、选择并转移导航菜单1.html代码: 2.js代码: 3.output: 二、动态的改变菜单1.html代码:...

  • 表单处理

    我们现在渲染一个 LoginForm 表单来作为例子: input 元素中我们设置的 value={this.st...

  • Angular表单处理

    第七章 表单处理 学习内容: 一.简述模板式表单与响应式表单的不同 Angular表单API 模板式表单简述: ...

  • SpringMVC+Thymeleaf 处理表单提交

    SpringMVC+Thymeleaf 处理表单提交 thymleaf处理表单提交的方式和jsp有些类似,也有点不...

  • SpringMVC+Thymeleaf 处理表单提交

    SpringMVC+Thymeleaf 处理表单提交 thymleaf处理表单提交的方式和jsp有些类似,也有点不...

网友评论

      本文标题:表单处理

      本文链接:https://www.haomeiwen.com/subject/rmjrlxtx.html