mysql 数据路由_node-路由操作mysql数据库

node大部分方法都是异步的,在操作数据库方法后面紧接着输出结果,输出的结果只会为空值,使用promise及其方便的解决这个问题,接下来看看node如何使用路由来处理不同请求,进而操作mysql数据库

一、引入相关依赖

node中默认没有mysql,需要使用npm i mysql指令进行安装

const http = require('http');

const url = require('url');

const queryStr = require('querystring');

var mysql = require('mysql');

二、连接mysql数据库

配置本地mysqli数据库相关参数

var connection = mysql.createConnection({

host: 'localhost',*

user: 'root',*

password: '你的数据库密码',

*database: 'xxxx'

});

connection.connect();

三、使用promise async,await封装处理异步问题的函数

// Promise async,await解决异步问题

function fn(sql, data = []) {

return new Promise((success) => {

connection.query(sql, data, function (error, results) {

if (!error) {

success(results)

}

});

})

}

四、node启动服务

通过判断请求路径来给与请求不同的响应,调用promise处理异步问题

var obj = {};*

http.createServer(async (req, res) => {

res.writeHead(200, {*

'Content-Type': 'text/html; charset=utf-8'

});

// 解析请求路径以及参数

const { pathname, query } = url.parse(req.url);

if (pathname != '/favicon.ico') {*

switch (pathname) {

case '/':

var sql = "select * from user";

var result = await fn(sql);

obj = {

code: 1,

data: result

}

break;

case '/list':*

var data = queryStr.parse(query).tel;

console.log(data);*

*var sql = `select * from user where tel =${data}`;

var result = await fn(sql);

console.log(result);

obj = {

code: 2,

data: result

}*

break;

}

}

res.end(JSON.stringify(obj));

}).listen(10086)

console.log('http:localhost:10086');

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/345182.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

行为设计模式:中介者

以前我们看过迭代器模式。 中介者模式在实现目标上有很大的不同。 它是行为模式之一,其目的是改变对象之间的通信方式。 中介器将代替对象之间的直接通信,而不是直接相互通信。 例如,想象一下金融交易的场景。 您确实想交易和购买&#xff…

【渝粤题库】陕西师范大学500006 算法语言 作业

《算法语言》作业 一、填空题 1、13/2的运算结果为 ,’A’2的运算结果是 。 2、C 语言源程序需经过 、 两个过程生成可执行文件。 3、如果表示16进制常量45,在C 中应写为 。 4、C中变量从其作用域上分为 、 5、表达式X12的值为 。 6、3(12>0)的值为 。…

mysql多数据源事务_多数据源一致性事务解决方案

spring 多数据源配置spring 多数据源配置一般有两种方案:1、在spring项目启动的时候直接配置两个不同的数据源,不同的sessionFactory。在dao 层根据不同业务自行选择使用哪个数据源的session来操作。2、配置多个不同的数据源,使用一个session…

【渝粤题库】陕西师范大学700009 现代生物科技

《现代生物技术》作业 一.名词解释 1.生物技术 2.愈伤组织 3.前体 4.cDNA文库 5.化学酶工程 6.酶分子修饰 7.连续培养 8.DNA芯片 9.细胞融合 10.基因工程载体 11.蛋白质工程 12微生物转化 13.人工种子 14.胚胎移植 15.初级代谢产物 16.动物克隆技术 17、限制性内切酶 18、细胞全…

www.how2j.com_HOW-TO:快速开始使用Spring 4.0,以构建简单的REST-Like API(演练)

www.how2j.comHOW-TO:快速开始使用Spring 4.0,以构建简单的REST-Like API(演练) 关于使用Spring MVC创建Web API的另一篇教程。 不太复杂。 只是一个演练。 生成的应用程序将提供简单的API,将Mongo作为其持久性&#x…

【渝粤题库】国家开放大学2021春3938管理英语2题目

试卷代号:3938 2 0 2 1年春季学期期末统一考试 管理英语2 试题 2021年7月 注 意 事 项 一、将你的学号、姓名及分校(工作站)名称填写在答题纸的规定栏内。考试结束后,把试卷和答题纸放在桌上。试卷和答题纸均不得带出考场。监考人…

flutter 返回指定界面_Flutter页面路由导航及传参

转载请注明出处: https://learnandfish.com/概述 每个应用都有很多个页面,在flutter中同样也有很多页面,被称之为路由(Router),页面之间的跳转通过导航器(Navigator)进行管理。其中 Navigator.push 和 Navigator.pop 是最简单的跳转到新页面和…

正确的工作流程:我应该使用哪个OAuth 2.0流程?

什么是OAuth 2.0 OAuth 2.0是一个已被广泛采用的委托授权框架,已经存在了很多年,并且似乎已经存在。 如果您不熟悉OAuth 2.0的基本概念,可以使用 川崎孝彦写的优秀文章 。 这只是OAuth 2.0各方的简要提醒: 资源所有者–受保护资…

【渝粤题库】广东开放大学 秘书实务21 形成性考核

👉关注我,看答案👈 选择题 题目: 秘书职能包括以下哪几项? 选择一项或多项: 题目: 秘书职能包括以下哪几项? 选择一项或多项: 题目: 下列不属于企业文化的功能是&#…

mysql workbench入门_5分钟入门MySQL Workbench

接下来进入下一步,使用Workbench执行sql文件:1.打开Workbench,主页面上点击要connect的连接。2.注意系统偏好设置里,MySQL是running的状态,否则无法执行。创建数据库:点击创建数据库按钮,输入数…

【渝粤题库】广东开放大学 形成性考核 - 副本 (17)

选择题 题目:产值中心论关心的焦点是( ) 题目:要求企业“以产品为中心”的业务模式向“客户为中心”的模式转变,这是客户关系管理的( ) 题目:客户关系管理系统需要建立数据仓库…

【渝粤题库】广东开放大学 文化投资与贸易 形成性考核

选择题 题目:文化产业的最大价值在于()的规模效应。 题目:文化企业指那些在文化产业环境下以创意、生产、交换、()文化产品为方式、以期获得商业利润为目的的工商组织。 题目:由文化产业的内涵可…

apache +php + mysql_apache+php+mysql

apachephpmysqlimapldapjdktomcat的安装以下过程在redhat6.2 7.0下通过。使用软件:apache_1.3.19.tar.gzimap-2000c.tar.Zmod_jserv.so..soj2sdk-1_3_0_02-linux.binmysql-3.23.33-pc-linux-gnu-i6862.tar.gzopenldap-2.0.7.tar.gzphp-4.0.4pl1.tar.gzjakarta-tomca…

【渝粤题库】广东开放大学 个人与团队管理 形成性考核

题库查询系统 选择题 题目: 按照KOLB学习周期,一个完整的学习过程包含四个阶段,不属于这四个阶段的是( )。 A、获得经验 B、反思 C、认真分析 D、理论化和应用 选择一项&#xf…

使用Spring Boot和Vue进行有益的开发

“我喜欢编写身份验证和授权代码。” 〜从来没有Java开发人员。 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证。 Vue是一个Web框架,由于它的精简和刻薄,最近引起了很多关注。 …

effective mysql之备份与恢复_Effective MySQL之备份与恢复

第1章五分钟成为一名DBA1.1MySQL备份1.1.1确定数据库的大小1.1.2选择锁策略1.1.3运行时间1.1.4组合信息1.2执行MySQL备份1.2.1运行mysqldump1.2.2安全地备份1.2.3使用mysqldump的好处1.2.4更多信息1.2.5其他选项1.3本章小结第2章理解备份选项第1章五分钟成为一名DBA1.1MySQL备份…

mysql mydumper_系统运维|Mydumper-MySQL数据库备份工具

Mydumper 是 MySQL 数据库服务器备份工具,它比 MySQL 自带的 mysqldump 快很多。它还有在转储的同时获取远程服务器二进制日志文件的能力。Mydumper 的优势并行能力 (因此有高速度) 和性能 (高效的代码避免了耗费 CPU 处理能力的字符集转换过程)更容易管理输出 (每个…

【渝粤题库】广东开放大学 文化传播学 形成性考核

选择题 题目:从人类生活(特别是人类精神生活)的内容与内涵的角度对“文化”界定为:从最为广泛的民族志的意义上看,文化或文明是一个综合性体系,它包括知识、信仰、艺术、道德、法、习俗及作为社会成员的人所…

在日志中搜索时间间隔

介绍 这篇文章与我有关日志分析的迷你系列文章间接相关。 最好阅读两个主要部分,以更好地理解我在说什么。 第1 部分 , 第2部分 。 这篇文章描述了我在实现IDE方法时遇到的一个重要问题。 任务描述 当某人使用日志时,通常只需要调查一个时间…

【渝粤题库】广东开放大学 民事诉讼法 形成性考核

选择题 题目:人民法院认定公民无行为能力的判决作出以后,该公民经过治疗,病情得到好转,逐渐又恢复了民事行为能力。对此种情况,人民法院根据利害关系人的申请,应当如何处理?( &#…