node的express中间件之static之ajax提交json
static中间件可以使客户端直接访问网站中的所有静态文件.
利用这个功能可以直接把服务器上的静态页面直接读取出来返回到客户端.
从客户端点击一个按钮,向服务器端发送数据.并且插入到mysql数据库中去.
服务器端代码:
var express=require("express");
var app=express();
var mysql=require("mysql");
var pool=mysql.createPool({
host:"localhost",
port:3306,
database:"test_db",
user:"root",
password:"gys"
}); app.use(express.static(__dirname));
/*app.use(express.static("public"));*/
app.post("/", function (req,res) {
req.on("data", function (data) {
var obj=JSON.parse(data.toString());
pool.getConnection(function(err,connection){
if(err) res.send("与mysql数据库建立连接失败.");
else{
var str;
connection.query("insert into users set ?",{username:obj.username,firstname:obj.firstname}, function (err,result) {
if(err) str="在服务器mysql数据库中插入数据失败.";
else str="在服务器端mysql数据库汇总插入数据成功.";
connection.release();
res.send(str);
});
}
})
});
});
app.listen(1337,"127.0.0.1", function () {
console.log("开始监听1337");
});
根目录下的index.html代码:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>session中间件的使用</title>
<script type="text/javascript">
function submitData(){
var xhr=new XMLHttpRequest();
xhr.open("post","/",true);
xhr.onload= function () {
if(this.status=200){
document.getElementById("res").innerHTML=this.response;
}
};
var obj={firstname:"郭",username:"延思"};
xhr.send(JSON.stringify(obj));
}
</script>
</head>
<body>
<input type="button" value="提交" onclick="submitData();" />
<div id="res"></div>
</body>
</html>
在浏览器中键入:localhost:1337或localhost:1337/index.html
如果文件名是index.html可以直接这样写:localhost:1337
否则就是localhost:1337/文件名
node的express中间件之static之ajax提交json的更多相关文章
- node的express中间件之bodyParser
bodyParser用于解析客户端请求的body中的内容,内部使用JSON编码处理,url编码处理以及对于文件的上传处理. 下面是一个文件上传的例子. 建立一个1.html页面 <!DOCTYP ...
- MVC中用ajax提交json对象数组
应用场景:在前端用ajax向服务器提交json对象数组,在controller的以对象数组作为函数的参数,提交的json数组直接转为服务器端的对象数组. 如: 要将json对象数组[{Id:1,Nam ...
- Jquery Ajax 提交json数据
在MVC控制器(这里是TestController)下有一个CreateOrder的Action方法 [HttpPost] public ActionResult CreateOrder(List&l ...
- ajax提交json数据到后端C#解析
本文链接:https://blog.csdn.net/qq_22103321/article/details/78015920 前端提交json数据 $.ajax({ type: "post ...
- Node.js + Express中间件详解
使用中间件 Express是一种路由和中间件Web框架,它具有自己的最小功能:Express应用程序本质上是一系列中间件函数调用. 中间件函数是可以访问请求对象 (req),响应对象(res)以及应用 ...
- node的express中间件之directory
direcotry中间件用于在浏览器中流出网站某个目录下的所有子目录及文件. app.use(express.directory(path,[options])); 查看网站根目录下的文件及目录 va ...
- node的express中间件之session
虽然session与cookie是分开保存的.但是session中的数据经过加密处理后默认保存在一个cookie中.因此在使用session中间件之前必须使用cookieParser中间件. app. ...
- node.js+express+jade系列五:ajax登录
本文通过jquery实现简单的无刷新登录 1:首先要在router中配置登录请求,因为登录需要传user和pwd考虑到安全需用post请求 { path:'/', meth ...
- jquery ajax提交json格式的数据,后台接收并显示各个属性
我的表单如下: <form onsubmit="return false"> <ul> <li><span>用户名</span ...
随机推荐
- Mininet python代码创建拓扑、交互式界面创建主机、交换机
python代码创建拓扑: from mininet.net importMininet net =Mininet() # Creating nodes in the network. c ...
- ubuntu创建Centos7镜像&&配置运行环境
1. 下载centos7镜像 sudo docker pull centos:7 2. 启动centos7容器并挂载本地目录 sudo docker -it -v /home/software:/ho ...
- SPU - SKU - ARPU
商品和单品: 单品:汉语中的“个” 例如,iphone是一个单品,但是在淘宝上当很多商家同时出售这个产品的时候,iphone就是一个商品了 商品:淘宝叫item,京东叫product,商品特指与商家 ...
- rabbitmq安装部署
本文主要介绍rabbitmq-server-3.6.12的安装部署 # 检查是否已经安装旧版本的软件 rpm -qa|grep erlang rpm -qa|grep rabbitmq # 如果之前 ...
- 模仿QQ气泡聊天
尝试了几种方案,想模仿QQ的气泡聊天,总是不尽如意.网上倒是大把的Android和Html的例子,Delphi的没找着,只能自己试着折腾. 1. 用WebBrowser加载本地html,屡次折腾,失败 ...
- Android:Activity & Intent
参考:<第一行代码:Android> 郭霖(著) 2.2 Activity的基本用法 隐藏标题栏 在AndroidManifest.xml中配置,作为全局配置,在所有Activity范 ...
- HDU - 1142:A Walk Through the Forest (拓扑排序)
Jimmy experiences a lot of stress at work these days, especially since his accident made working dif ...
- Java并发--并发容器之CopyOnWriteArrayList
原文链接:http://ifeve.com/java-copy-on-write/ Copy-On-Write简称COW,是一种用于程序设计中的优化策略.其基本思路是,从一开始大家都在共享同一个内容, ...
- HTML5移动Web开发指南-学习笔记(一)
一,浏览器引擎 浏览器的内核引擎,基本上是四分天下: Trident: IE 以Trident 作为内核引擎; Gecko: Firefox 是基于 Gecko 开发; WebKit: Safa ...
- WPF绘制简单常用的Path(转)
写代码出身的我们经常需要使用一些简单 但是不是规则图形的Path 但限于美工功底有限 不知道怎么去画 下面我告诉大家一些简单的小技巧 用代码来画Path 个人还是比较喜欢用代码 因为数值控制的更精细 ...