首页 > 数据库 >Node.js 创建MySql服务

Node.js 创建MySql服务

时间:2024-10-22 08:49:04浏览次数:1  
标签:Node npm axios const err express js MySql

1.MySql服务

1.安装依赖

在终端执行如下脚本:

npm install mysql2
npm install cors
npm install express

2.连接数据库并创建获取数据Api

js文件:index.js

const express = require('express');
const mysql = require('mysql2');
const cors = require('cors');

const app = express();
const port = 3000;

// 允许跨域请求
app.use(cors());

// 创建MySQL连接
const connection = mysql.createConnection({
    host: '127.0.0.1',  // 远程数据库地址
    user: 'sa',
    password: '123',
    database: 'mydatabase'
});

// 连接数据库
connection.connect(err => {
    if (err) {
        console.error('Database connection failed: ' + err.stack);
        return;
    }
    console.log('Connected to database.');
});

// 创建API端点
app.get('/api/data', (req, res) => {
    const query = 'SELECT * FROM userdata';
    connection.query(query, (err, results) => {
        if (err) {
            res.status(500).send('Error querying database');
        } 
        else {
            res.json(results);
        }
    });
});

// 启动服务器
app.listen(port, () => {
    console.log(`Server running on http://localhost:${port}`);
});

3.启动服务

终端执行脚本:

node .\index.js

2.客户端访问

1.安装依赖

在终端执行如下脚本:

npm install axios

2.访问MySql服务并获取数据

import axios from 'axios';

const apiClient = axios.create({
  baseURL: 'http://localhost:3000/api',  // 设置后端API的地址
  headers: {
    'Content-Type': 'application/json',
  },
});

export default {
  getData() {
    return apiClient.get('/data');
  },
};

标签:Node,npm,axios,const,err,express,js,MySql
From: https://www.cnblogs.com/zp1207/p/18491763

相关文章

  • 2024/10/21 日 日志 --》关于Mysql中的数据库连接池 简述笔记整理
    为了保证博客内容的连贯性,我决定把Maven内容单独开辟而不与JDBC相混。以下为数据库连接池的简单描述和笔记整理点击查看代码--数据库连接池--简介:--·数据库连接池是个容器,负责分配、管理数据库连接。--·它允许应用程序重复使用一个现有的数据库连接,而不是再重新建......
  • 实习面试准备——mysql篇1
    不得不说,博客园这个文章格式搞得真变扭,感觉不如word好用。这次就解释下面8个问题。1.慢查询、2.索引相关、3.聚簇索引与非聚簇索引、4。回表查询与覆盖索引。(格式无所谓了,就这样写吧)1.慢查询:在项目中,我们一般会对其中业务分析其运行时间。对于时间长的业务,分析是否是慢sql导致。......
  • MySQL—CRUD—进阶—(二) (ಥ_ಥ)
    文本目录:❄️一、新增: ❄️二、查询:       1、聚合查询:             1)、聚合函数:             2)、GROUPBY子句:             3)、HAVING子句:      2、联合查询:  ......
  • 基于node.js+vue河北水利电力学院校园图书馆热门借阅书目智慧推荐系统(开题+程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容进度安排:2023.10.8--2023.11.7:指导教师出题、教研室审核、学院审核、选题系统导入、选题。2023.11.8--2023.11.12:对选题进行详细的了解分析,查看文献完成任务书。2......
  • 77.优美的鲜花网店网页 ​Web前端网页制作 大学生期末大作业 html+css+js
    目录一、前言二、网页文件三、网页效果四、代码展示1.HTML2.CSS3.JS五、更多推荐一、前言本实例以鲜花为主题设计,应用html+css+js,包括DIV布局、图片轮翻效果、菜单导航、二级三级菜单、留言板、搜索等,供大家参考。本网页支持如Dreamweaver、HBuilder、Text、Vscode......
  • Node.js EventEmitter
    Node.jsEventEmitterNode.js所有的异步I/O操作在完成时都会发送一个事件到事件队列。Node.js里面的许多对象都会分发事件:一个net.Server对象会在每次有新连接时触发一个事件,一个fs.readStream对象会在文件被打开的时候触发一个事件。所有这些产生事件的对象都是even......
  • ELK04 ELK综合案例, logstash写入mysql, kibana访问验证 ubuntu使用
    6ELK综合实战案例6.1Filebeat收集Nginx日志利用Redis缓存发送至Elasticsearch 图上ip地址仅供参考6.1.2.2修改Filebeat配置#安装redis(访问0.0.0.0和密码123456),nginx(访问日志json格式)[root@ubuntu~]#vim/etc/filebeat/filebeat.ymlfilebeat.inputs:-......
  • 基于Java+Jsp+Ssm+Mysql实现的在线乡村风景美食景点旅游平台功能设计与实现十五
    一、前言介绍:1.1项目摘要乡村风景美食旅游平台的课题背景主要基于我国旅游产业的现状与发展需求。当前,我国旅游产业虽然发展迅速,但仍然存在基础薄弱、管理手段滞后、信息化程度低等问题。旅游行政管理部门的管理方式相对落后,缺乏有效的信息化管理手段,信息沟通渠道不畅,这......
  • 基于Java+Jsp+Ssm+Mysql实现的在线乡村风景美食景点旅游平台功能设计与实现十六
    一、前言介绍:1.1项目摘要乡村风景美食旅游平台的课题背景主要基于我国旅游产业的现状与发展需求。当前,我国旅游产业虽然发展迅速,但仍然存在基础薄弱、管理手段滞后、信息化程度低等问题。旅游行政管理部门的管理方式相对落后,缺乏有效的信息化管理手段,信息沟通渠道不畅,这......
  • JavaWeb:实验二JSP表单开发及访问数据库
    实现注册与登录功能:1.创建一个数据库,在数据库建立用户表。2.制作一个注册表单,可以输入账户和密码并提交(在数据提交之前用JS对表单数据进行有效性验证),将表单提交的数据写入数据库。3.制作一个登录表单,输入账号和密码,通过数据库进行验证,如果账号、密码验证通过,则显示“登录成功”......