nodejs常用框架使用样例
Express
"express": "^4.17.1",
"body-parser": "^1.19.0",
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
// 创建 application/x-www-form-urlencoded 编码解析
var urlencodedParser = bodyParser.urlencoded({ extended: false })
//设置允许跨域访问该服务.
app.all('*', function (req, res, next) {
res.header('Access-Control-Allow-Origin', '*')
next()
});
app.use('/public', express.static('public'));
app.get('/index.htm', function (req, res) {
res.sendFile( __dirname + "/" + "index.htm" );
})
app.post('/process_post', urlencodedParser, function (req, res) {
// 输出 JSON 格式
var response = {
"first_name":req.body.first_name,
"last_name":req.body.last_name
};
console.log(response);
res.end(JSON.stringify(response));
})
var server = app.listen(8081, function () {
var host = server.address().address
var port = server.address().port
console.log("应用实例,访问地址为 http://%s:%s", host, port)
})
Koa
"koa": "^2.11.0",
"koa-bodyparser": "^4.2.1",
"koa-mount": "^4.0.0",
"koa-router": "^7.4.0",
"koa2-cors": "^2.0.6",
"koa-static": "^5.0.0",
const Koa = require('koa');
const router = require('koa-router')();
const app = new Koa();
const mount = require('koa-mount');
const fs=require("fs");
const bodyParser = require('koa-bodyparser');
var cors = require('koa2-cors');
//允许跨域
app.use(cors());
//允许post请求
app.use(bodyParser());
//设置静态文件目录
const serve = require('koa-static');
app.use(serve(__dirname + "/public"));//静态资源(服务端)
////读取指定文件夹里所有json文件名称
var fn_getModelLocs=async (ctx,next)=>{
await getDirJsons(ctx,modelPath);
};
//功能函数
////模型数据的路径
let modelPath='modelDatas/';
////读取指定文件夹里所有json文件名称
function getDirJsons(ctx,path) {
let jsonFiles=[];
let files=fs.readdirSync(path);
files.forEach((item,index)=>{
jsonFiles.push(item.replace('.json',''));
});
ctx.body=jsonFiles;
}
//路由
router.get('/',async ctx => {
ctx.body = 'Hello Server';
});
app.use(mount('/getModelLocs',fn_getModelLocs));
app.use(mount('/getModeldata',fn_getModels));
app.use(router.routes())
app.listen(2000);
sqlite3
"sqlite3": "^4.1.1"
1 然后在在你要用的js文件中引入模块
var fs = require('fs');
var file = 'test.db';//这里写的就是数据库文件的路径
var exists = fs.existsSync(file);
var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database(file);
2 下面是sql语句:
//增
var sql1 = db.prepare("insert into 表名 values (内容,跟mysql一样)");
sql1.run();
//console.log(sql1);//可以这样检查
//删
var sql2 = db.prepare("delete from 表名 where id = 1");
// console.log(sql2);
sql2.run();
//改
var sql3 = db.prepare("update 表名 set name = winston where id = 1");
sql3.run();
//查
//查一个表的所有数据
db.all("select * from 表名",function(err,row){
console.log(JSON.stringify(row));
})
//查一条数据
db().each("select * from 表名",function(err,row){
console.log(row);
})
Electron-vue
使用electron-vue 脚手架工具
vue init simulatedgreg/electron-vue my-project
cd my-project
npm install
npm run dev
nodejs常用框架使用样例的更多相关文章
- Javascript之十大常用原理性样例大总结
案例一:全选等 运用知识点:ondblclick=()| onclick | 寻找标签属性及判断和函数的应用
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- 大数据学习day16------第三阶段-----scala04--------1. 模式匹配和样例类 2 Akka通信框架
1. 模式匹配和样例类 Scala有一个十分强大的模式匹配机制,可以应用到很多场合:如switch语句.类型检查等.并且Scala还提供了样例类,对模式匹配进行了优化,可以快速进行匹配 1.1 模式匹 ...
- Ajax框架,DWR介绍,应用,样例
使用Ajax框架 1. 简化JavaScript的开发难度 2. 解决浏览器的兼容性问题 3. 简化开发流程 经常使用Ajax框架 Prototype 一个纯粹的JavaScript函数库,对Ajax ...
- Tiny并行计算框架之复杂演示样例
问题来源 很感谢@doctorwho的问题: 假如职业介绍所来了一批生产汽车的工作,如果生产一辆汽车任务是这种:搭好底盘.拧4个轮胎.安装发动机.安装4个座椅.再装4个车门.最后安装顶棚. 之间有的 ...
- 异步nodejs代码的同步样子写法样例
异步nodejs代码的同步样子写法样例 js的异步嵌套太深代码将不好看.尤其在用node的时候这种情况会大量出现. 这里用node连接redis,做一个用户注册的简单例子来说明.例如用redis做存储 ...
- Python Web框架Tornado的异步处理代码演示样例
1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与还有一个流行的Python web框架Django相比.tornado不提供操作数据库的ORM接口 ...
- 教你写Http框架(二)——三个样例带你深入理解AsyncTask
这个标题大家不要奇怪,扯Http框架怎么扯到AsyncTask去了,有两个原因:首先是Http框架除了核心http理论外.其技术实现核心也是线程池 + 模板 + handler,而AsyncTask又 ...
- java并行调度框架封装及演示样例
參考资料: 阿里巴巴开源项目 CobarClient 源代码实现. 分享作者:闫建忠 分享时间:2014年5月7日 ---------------------------------------- ...
随机推荐
- gcc/clang编译带pthread.h头文件的源码时需要的参数
今天敲了一个小程序,编译时出现错误:undefined reference pthread_create 原来由于pthread库不是Linux系统默认的库,连接时需要使用库libpthread.a, ...
- vmware安装win7*64位时,安装不成功的关键点是光驱接口类型选择为IDE模式
mware 安装win7*64时,找不到光盘,后来在xin7*64的虚拟机下的编辑虚拟机设置 找到光驱,点击高级,并选择IDE即可,这样就可以进入虚拟机找到光驱和硬盘到了.进入winpe后可以看到各种 ...
- Oracle数据库——ROWNUM
Oracle数据库--ROWNUM 前言 刚学到了ROWNUM的用法,网上一搜,结果发现了有很多帖子,写的都很全.本着好记性不如烂笔头的原则,我还是决定自己手打一遍,当然下面也附上了我参考的链接. ...
- ndarray笔记
Numpy的介绍 1. Ndarray:N-dimensional array, N维数组 2. 一种由相同类型的元素组成的多维数组,元素数量是事先指定好的 例:建立Ndarray多维数组 nd ...
- SAS学习笔记29 logistic回归
变量筛选 当对多个自变量建立logistic回归模型时,并不是每一个自变量对模型都有贡献.通常我们希望所建立的模型将具有统计学意义的自变量都包含在内,而将没有统计学意义的自变量排除在外,即进行变量筛选 ...
- asp.net core-16.EF Core Migration
左边的是基于visual studio code 右边的是基于visual studio 如果想要在数据库的AspNetUsers表里添加一列 然后可以发现 在Data下的Migrations文件夹下 ...
- hdu 4501三重包问题
好好理解一下背包问题 从01包入手 内层的循环 是为了以后求解记录数据 因为只有一个取舍问题 所以只需要一层循环就可以 这里有三个背包 钱 积分 以及免费物品 那么 就需要三重循环 #include& ...
- (四)spring+servlet 整合
一.Spring与Servlet的整合 1.1: 加入Spring的jar包.(要加web.jar包) 1.2: java工程中获取Spring的上下文对象. ApplicationContext c ...
- WebSocket协议探究(二)
一 复习和目标 1 复习 协议概述: WebSocket内置消息定界并且全双工通信 WebSocket使用HTTP进行协议协商,协商成功使用TCP连接进行传输数据 WebScoket数据格式支持二进制 ...
- 国际化(i18n)学习
一 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 国际化(internationalization)又称 ...