express搭建一个简单的查询服务器

本文主要和大家介绍了使用express搭建一个简单的查询服务器的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到到大家。

使用到的技术栈有express、mysql.

项目结构:

service--node_modules--app.js--query.js

登录后复制

app.js支持调用服务,使用body-parser对request进行处理.

query.js实现链接数据库以及查询数据库的功能.

app.js代码如下:

var express = require('express');var query = require('./query')var bodyParser = require('body-parser');var cookieParser = require('cookie-parser');var app = express();app.use(bodyParser.urlencoded({ extended: false }))//返回的对象是一个键值对,当extended为false的时候,键值对中的值就为'String'或'Array'形式,为true的时候,则可为任何数据类型。app.use(bodyParser.json())//跨域支持app.all('*', function(req, res, next) {  res.header("Access-Control-Allow-Origin", "*");  res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');  res.header("Access-Control-Allow-Headers", "X-Requested-With");  res.header('Access-Control-Allow-Headers', 'Content-Type');  next();});//登录app.post('/login',(req,res)=>{  var opts = req.body;  query(" SELECT *FROM `v_users` WHERE userAcount = ?",opts.userName).then((result)=>{    var response = result[0];    if(opts.password !== response.u_password){      return res.send({        errorCode:'404',        errorMsg:'登录密码错误'      })    }    //模拟生成loginToken    var loginToken = response.userAcount + Math.random()*Math.pow(10,16)    res.send({      loginToken:loginToken    })  })})var server = app.listen(3000,()=>{  console.log('success')})

登录后复制

query.js代码如下:

(function() {  var mysql = require('mysql');  // var session = require('cookie-session');  var query = (sql,key) => {    var connection = mysql.createConnection({      host: 'localhost',      user: 'root',      password: 'root123',      database: 'm_users'    });    connection.connect()    var promise = new Promise((resolve,reject)=>{      connection.query(sql,[key], function(error, results, fields) {        if(error){          reject(error)        }else{          resolve(results);        }      });      connection.end();    });    return promise;  }  module.exports = query;})()

登录后复制

实践总结:

1.express的入门级用法,以及对body-parser和mysql插件的用法。

2.尝试使用 Inspector调试node程序,实现debugger,by the way 个人更习惯使用gulp来调试.

3.客户端使用post调取接口的时候要区分Content-Type的区别:

Content-Type:application/json;charset=UTF-8 参数放在requestPayload

Content-Type:不设置或者application/x-www-form-urlencoded 参数放在Form Data

以上就是express搭建一个简单的查询服务器的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2786567.html

(0)
上一篇 2025年3月8日 17:46:50
下一篇 2025年3月8日 17:46:56

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • nodejs和express搭建多人聊天室

    准备工作:新建一个文件夹 chatroom在终端输入以下命令,按照步骤npm(没装过的去官网安装下node和npm)会自动给你生成一个package.json文件 安装express和socket.io package.json文件如下: …

    2025年3月8日 编程技术
    200
  • express路由管理的几种自动化方法分享

    我们平时在使用express写代码的过程中,会根据类别,将路由分为多个不同的文件,然后在项目的入口文件(例如app.js)中将其依次挂载,例如: const index = require(‘./routes/index’)const us…

    2025年3月8日 编程技术
    200
  • JS如何解决一些简单计算题

    js的功能是很强大的,本文主要和大家分享js如何解决一些简单计算题的方法,希望能帮助到大家。 我们先来看下运行后的效果: 接下来我们分享给大家全部代码: nbsp;html>              document     /*计…

    2025年3月8日
    200
  • JS实现网页进度条简单代码分享

    本文主要和大家分享JS实现网页进度条简单代码,希望能帮助到大家。 nbsp;html>            jquery实现简单网页进度条    * { margin: 0; padding: 0; } /*大小和body一样,盖住…

    编程技术 2025年3月8日
    200
  • 简单介绍React

    本文主要和大家分享一下react的起源及发展,希望啊能帮助到大家。 字符拼接时代 – 2004 时间回到 2004 年,Mark Zuckerberg 当时还在宿舍捣鼓最初版的 Facebook 。这一年,大家都在用 PHP 的…

    2025年3月8日 编程技术
    200
  • vue-cli开发多页面应用的简单示例

    创建项目 使用 vue-cli 创建一个项目 $ vue init webpack vue-multiple-demo 登录后复制 根据控制台的提示,填写相关信息即可。创建完成后,进入该项目根目录并安装依赖。 $ cd vue-multip…

    编程技术 2025年3月8日
    200
  • angular的工作机制简单介绍

    本文主要和大家简单介绍一下angular的工作机制,希望能帮助到大家。 angular的工作机制 1.加载html,然后解析成dom; 2.加载angular.js脚本; 3. angularjs等待domcontentloaded事件的触…

    编程技术 2025年3月8日
    200
  • express中路由规则详解及如何获取请求参数

    本文主要为大家分享一篇基于express中路由规则及获取请求参数的方法,具有很好的参考价值,希望能帮助到大家。 express中常见的路由规则 主要使用的路由规则是get和post两种,即 var express = require(‘ex…

    编程技术 2025年3月8日
    200
  • 基于input的动态模糊查询

    这次给大家带来基于input的动态模糊查询,基于input动态模糊查询的注意事项有哪些,下面就是实战案例,一起来看一下。 最近在用jQuery实现动态模糊查询的时候,找了挺久都没有找到像Vue.js的watch属性这么好用的动态模糊查询方法…

    2025年3月8日 编程技术
    200
  • nodejs基于express实现文件上传

    本文主要和大家介绍了nodejs基于express实现文件上传的方法,结合实例形式分析了nodejs基于express框架实现文件上传功能的具体步骤与相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。 本人上传文件时是基于express…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论