Node从零到一,实现API的编写并能够访问(一)

104 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第8天,点击查看活动详情

最近在开始探索Node,使自己逐渐向全栈发展,简单记录一下从0到1的过程。 Node官网:nodejs.cn/

一、 安装Node.js

已安装过的小伙伴可忽略此步骤

  1. 打开Node官网,下载并安装Node.js 下载地址:Node下载地址
  2. 安装完成过后按 win + R(Window系统),输入 cmd 在命令行中输入 **node -v **,如果出现了版本号则表示安装成功

二、 初始化项目

  1. D盘(你们可根据自身选择磁盘) 中新建一个文件夹
  2. 打开新建的文件夹
  3. 在文件夹的地址栏输入 cmd
  4. 在命令行中输入 npm init,文件夹中会得到一个 package.json 的文件

三、 安装依赖项

我这里并没有使用 Node 原生的 http模块,使用的是express,有其他需要可以在安装,我这路只安装了一个 express

  1. express —— 一款基于Node的快速、开放、极简、易上手的Node框架
  2. body-parser —— 用来解析表单。
//安装
 npm install express body-parser mysql

四、 编写项目

  1. 在文件夹的根目录新建一个app.js的文件
  2. 引入刚刚下载的 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} ~~~`) )


五、 启动项目

  1. 打开项目的根目录文件夹, 在文件夹的地址栏输入 cmd
  2. 在命令行中输入 ** 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 了。

下篇文章告诉大家如何部署上线,提前告诉大家需要的东西,如下:

  1. 一个已经通过备案的域名
  2. 一个 线上服务器