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日 ---------------------------------------- ...
随机推荐
- lcd timing的理解
所谓调lcd timing就是去调lcd时序,一般是6个部分:HFPD(在一行扫描以前需要多少个像素时钟),HBPD(一行扫描结束到下一行扫描开始需要多少个像素时钟),VFPD(一帧开始之前需要多少个 ...
- jira邮箱配置
系统-邮件-外发邮件
- Information Cartography
作者:Dafna Shahaf 会议:ACM 2015. 研究大背景:自动化地从很大数据集中提取结构化的知识变得越来越难.在本篇文章中,我们将探索我们在文献中(25,26,27)中创立的方法来自 ...
- 在ROS系统下,获取tango的RGBD信息和Pose信息
Project Tango 是从Google 的 Advanced Technology and Projects group (ATAP) 孵化出来的一个项目,诚如ATAP高级工程师Johnny L ...
- java源码--Map
Map接口 用于保存具有映射关系的数据结构,实现该接口的类可以通过键来获取对应的值.. 可以将给定一个键值对存储在Map接口的实现类实例中,如:map.put("key", &qu ...
- gin mongodb restful api设计: 动态的patch接口
目录 什么是Patch? Patch方法可以用来更新资源的一个组成部分 什么时候使用Patch? 当你仅需更新资源的某一项,即不完全也不幂等 那当我们的模型在数据库中几乎每个字段都可能会遇到改变的时候 ...
- PHP对程序员的要求更高
我这个文章标题可不是和大家开玩笑的哦 首先, 大家都知道, PHP也是一种编译型脚本语言, 和其他的预编译型语言不同, 它不是编译成中间代码, 然后发布.. 而是每次运行都需要编译.. 为此, 也 ...
- angular 源码 <一> rotuerLinkActive
这几篇,查看angular 源码. rotuerLinkActive 是路由的样式设置. 它的值是 css 的一个类.或者几个类. 主要代码如下 @Input() set routerLinkActi ...
- matlab cell
cell元包是matlab中提供的一种数据类型,功能强大. 关于cell的创建: 1.跟一般创建举证一样,直接使用C = {A B D E}这种形式,不过这里把"[]"改成了}&q ...
- Django路由及函数视图
路由系统 在django中,uri与逻辑函数的对应关系我们称之为路由系统 伪静态 伪静态是相对于静态文件来说的,例如https://www.cnblogs.com/hesujian/p/1116581 ...