nodejs数据采集(nodejs获取表单数据的三种方法实例)
nodejs数据采集
nodejs获取表单数据的三种方法实例前言
nodejs作为服务端语言,在开发中注册登录等需通过form表单向后端发送数据进行判断,那作为服务端语言的nodejs通过哪些方法可以接收调用form表单的post请求值呢。
常见的会用到以下三种,让我们对着例子看看具体用法。
后端我们使用express插件,需要对express有所了解的才便于阅读哦~
1、首先npm初始化,下载express包,导入模块后创建服务对象
//导入express模块 const express = require("express"); // 创建服务器对象 const app = express();
form表单传递
这种通过from表单的特性,可以点击表单中button的type为submit的按钮,会提交表单数据。形式是以一种对象方式,属性名为input标签中name值,属性值为input标签value值,下面例子来看看具体写法。
<form action="/todata" method="POST"> <table> <tr> <td>姓名</td> <td> <input type="text" name="user" id=""></td> </tr> <tr> <td>密码</td> <td> <input type="text" name="password" id=""></td> </tr> <tr> <button type="submit">提交</button> </tr> </table> </form>
由于表单提交是post请求,在后端nodejs代码中需要对post请求数据接收需要做解析响应头的处理app.use(bodyParser.urlencoded({ extended: false })),然后用req.body来表示前端传递过来的数据。具体后端代码如下。
const express = require("express"); const app = express(); app.use(express.static("./")) var bodyParser = require('body-parser') // 解析 application/x-www-form-urlencoded响应头 app.use(bodyParser.urlencoded({ extended: false })) app.post("/todata",(req,res)=>{ console.log(req.body); res.send("提交成功") }) app.listen("80",()=>{ console.log("成功"); })
通过终端运行node代码,来看看结果
ajax请求传递
在向后端发送请求时,常用到get、post请求,同样,表单的数据可以通过ajax以post请求发送数据给后端。以上面例子为基础,该方法的前端代码如下。
$("#inp3").on("click",function(){ let user = $("#inp1").val(); let password = $("#inp2").val(); $.ajax({ url:"todata", type:"post", data:{ user, password }, success:(data)=>{ alert(data) } }) })
这里,我们将两个input的值获取到,然后绑定提交按钮的提交按钮进行ajax请求发送,发送给后端的数据存储在data属性中。后端同样通过req.body获取到。这里需要特别注意的是form表单不需要写action值,表单中button按钮需要阻止默认行为(不然会点击直接发送请求导致ajax请求会失败),或是用input标签type为button类型。
表单序列化
这种发送是表单提交的常用方法,它也是通过ajax发送请求,也可以将name属性作为发送后端的属性名直接发送。可以说是以上两种方法的结合。
$("#inp3").on("click",function(){ $.ajax({ url:"todata", type:"post", data:$("form").serialize(), success:(data)=>{ alert(data) } }) })
只需要通过$(“form”).serialize()这个方法,就能获取含name属性值。
总结
到此这篇关于nodejs获取表单数据的文章就介绍到这了,更多相关nodejs获取表单数据内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
- nodejs登录案例(利用Node.js创建一个密码生成器的全步骤)
- nodejs json文件读写(nodejs将JSON字符串转化为JSON对象报错的解决)
- nodejs怎么查看对象的全部属性(浅谈nodejs中创建cluster)
- nodejssocket文件传输(node+socket实现简易聊天室功能)
- nodejs游戏服务端框架(如何写Node.JS版本小游戏)
- nodejs数据采集(nodejs获取表单数据的三种方法实例)
- nodejs的广播机制(node.js如何自定义实现一个EventEmitter)
- nodejsweb服务(Nodejs实现内网穿透服务)
- nodejs部署上传文件(node.js使用express-fileupload中间件实现文件上传)
- nodejs架构解析(详解NodeJS模块化)
- linux用nvm安装nodejs(nodejs管理工具nvm安装过程详解)
- nodejs格式化教程(nodejs利用readline提示输入内容实例代码)
- nodejs请求页面(node.js+postman实现模拟HTTP服务器与客户端交互)
- pythonweb和nodejs(Node与Python 双向通信的实现代码)
- docker node 分阶段构建(Docker安装、创建镜像、加载并运行NodeJS程序的详细过程)
- nodejs实现websocket服务端(Node.js+express+socket实现在线实时多人聊天室)
- 《极限挑战》深访都市夜归人,夜间打工者体验,黄磊录完憔悴了(极限挑战深访都市夜归人)
- Google 推出了一个游戏生成器,让不会编程的你也能自己设计游戏(推出了一个游戏生成器)
- 二胎家庭老大爱闹情绪,用这招很有效(二胎家庭老大爱闹情绪)
- 一个30岁男人外遇失败的全过程(一个30岁男人外遇失败的全过程)
- 《无敌破坏王2》 不聊彩蛋,聊聊我从动画里看到的现实那些事儿(无敌破坏王2不聊彩蛋)
- 《寄生虫》 三观不正 人类悲欢从来不相通,感同身受也并非本能(寄生虫三观不正)
热门推荐
- vue轮播图代码(vue实现无缝轮播效果跑马灯)
- dedecms自定义表单验证码(dedecms织梦验证码无法正常显示的3种解决办法)
- css样式基础知识(CSS深入教程之文字修饰的那点事)
- 最新版MySQL 8.0.22下载安装超详细教程(Windows 64位)(最新版MySQL 8.0.22下载安装超详细教程Windows 64位)
- windows下搭建docker私有仓库(使用docker compose安装harbor私有仓库的详细教程)
- 最低成本搭建云服务器(云服务器搭建难不难?企业云服务器搭建流程)
- javascript如何跨域
- CSS边框border样式缩写
- 如何采集nginx的日志(Filebeat 采集 Nginx 日志的方法)
- JavaScript中call、apply、bind实现原理详解(JavaScript中call、apply、bind实现原理详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9