标签:char htm 课程学习 本地 api work creat node ESS
博主在学习安卓课程做期末程序的时候就一直想自己做API了,结果网上的教程感觉都太杂,很多都文不对题,找不到一个明确的思路,结果就只能放弃改用jdbc实现数据库交互,现在学了前端,又接触了一点nodeJS之后,才终于有了思路,最近也成功给自己放在服务器上的网站部署了API。现在就来分享一下,也顺便给自己留个备份。
ps:只是自己突然想到的做法,而且个人觉得真的是简易版,可能不标准,但亲测能用。
首先声明:不懂也没关系,直接仿照代码,需要修改的地方我会用红色标注出来,不过mysql一定要懂一点,会写sql语句就行。
需要的下载的东西(写给完全的小白,比如几个月前的我):vs code 、nodeJS、mysql
博主是在学菜鸟课程学习的nodeJS,本来也没想做API,结果学到 express、api 还有 mysql这部分时,突然灵光一闪,把api内部的语句替换成mysql不就能做一个和数据库相连的api了吗,下面是教程链接
express教程、RESTful API教程、连接 MySQL
有兴趣了解nodeJS的同学可以看一下,主要是这三个章节。没兴趣的直接跳过,下面直接上代码
创建一个js文件,如 server.js
打开终端,安装express和mysql依赖
npm i express -S
npm i mysql -S
主要代码
const express = require(‘express‘); const app = express(); const mysql = require(‘mysql‘); const connection = mysql.createConnection({ host: ‘localhost‘, user: ‘root‘, password: ‘123456‘, // 改成你自己的密码 database: ‘test‘ // 改成你的数据库名称 }); connection.connect(); // 下面是解决跨域请求问题 app.all(‘*‘, function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With"); res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS"); res.header("X-Powered-By",‘ 3.2.1‘); res.header("Content-Type", "application/json;charset=utf-8"); next(); }); // 这里就是主要要修改的地方,其实也就一行 // 把 address 改成你自己定的地址,就是连接访问的那个地址 app.get(‘/address‘,function(err,res){ const sql = ‘select * from carousel‘; // 写你需要的sql代码,你要是不会写那我就真的没办法了 connection.query(sql,function(err,result){ if(err){ console.log(‘[SELECT ERROR] - ‘, err.message); return; } // result内放的就是返回的数据,res是api传数据 // 返回的数据需要转换成JSON格式 res.json(result); }); }) var server = app.listen(8081, ‘127.0.0.1‘, function () { var host = server.address().address; var port = server.address().port; console.log("地址为 http://%s:%s", host, port); })
最后执行 node server.js(文件名)
在浏览器输入 127.0.0.1::8081/address 即可,address改成你设定的
使用nodeJS创建API接口,连接mysql数据库(新手向简易版)
标签:char htm 课程学习 本地 api work creat node ESS
原文地址:https://www.cnblogs.com/kusaki/p/11396997.html