开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第8天,点击查看活动详情
最近在开始探索Node,使自己逐渐向全栈发展,简单记录一下从0到1的过程。 Node官网:nodejs.cn/
一、 安装Node.js
已安装过的小伙伴可忽略此步骤
- 打开Node官网,下载并安装Node.js 下载地址:Node下载地址
- 安装完成过后按 win + R(Window系统),输入 cmd 在命令行中输入 **node -v **,如果出现了版本号则表示安装成功
二、 初始化项目
- 在 D盘(你们可根据自身选择磁盘) 中新建一个文件夹
- 打开新建的文件夹
- 在文件夹的地址栏输入 cmd
- 在命令行中输入 npm init,文件夹中会得到一个 package.json 的文件
三、 安装依赖项
我这里并没有使用 Node 原生的 http模块,使用的是express,有其他需要可以在安装,我这路只安装了一个 express
- express —— 一款基于Node的快速、开放、极简、易上手的Node框架
- body-parser —— 用来解析表单。
//安装
npm install express body-parser mysql
四、 编写项目
- 在文件夹的根目录新建一个app.js的文件
- 引入刚刚下载的 express 依赖 app.js 代码如下:
const express = require('express'),
app = express(),
bodyParser = require('body-parser'),
//端口号
port = 5555
//引用bodyParser
app.use(bodyParser.json()) // for parsing application/json
app.use(bodyParser.urlencoded({ extended: false })) // for parsing application/x-www-form-urlencoded
//设置跨域请求
//app.all('*', (req, res, next) => {
// res.header("Access-Control-Allow-Credentials", true)
// res.header("Access-Control-Allow-Origin", "*")
// res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild')
// 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()
//})
//接收请求
app.get('/api/list', (req, res) => {
//返回数据
res.send('<p style="color:red">服务已启动</p>');
})
// 监听服务是否启动
app.listen(port, () => console.log(`~~~已启动服务,端口为: ${port} ~~~`) )
五、 启动项目
- 打开项目的根目录文件夹, 在文件夹的地址栏输入 cmd
- 在命令行中输入 ** node app.js**,然后我们的项目就启动起来了
六、测试
编写一个 index.html 的网页,然后来请求测试,是否启动成功,能够访问
index.html 代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Node.js编写接口</title>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
</head>
<body>
</body>
<script>
$(function(){
axios.get('http://localhost:5555/api/list')
.then((res) => {
console.log(res);
}).catch(err => {
console.log(err);
});
})
</script>
</html>
这就完成了通过Node简单编写一个 API 了。
下篇文章告诉大家如何部署上线,提前告诉大家需要的东西,如下:
- 一个已经通过备案的域名
- 一个 线上服务器