Nodejs 上的 Api 开发入门

2025-06-07

Nodejs 上的 Api 开发入门

在我们开始动手之前,我假设你已经对 js 有了深入的了解。我还假设你的机器上安装了 nodejs。nodejs
有很多 web 框架。要指出一些流行的,我可能会说 express、koa 和 hapi。我们将使用 express,因为它是 nodejs 最常用的 web 框架,拥有大量配置为与之一起工作的模块。此外,语法和学习曲线非常容易赶上,如果你遇到问题,stackoverflow 上几乎每个查询都有答案。
首先,让我们创建一个目录并转到它。进入项目目录后,打开终端/控制台并运行 npm init 来启动一个 nodejs 项目。根据需要填写详细信息。完成后,输入

npm i — save express body-parser morgan nodemon
Enter fullscreen mode Exit fullscreen mode

按回车键,将安装并更新 package.json 文件中的依赖项。

Nodemon将监视 node.js 应用程序中的任何更改并自动重启服务器 - 非常适合开发,因此您不必手动重启服务器来查看更改。

Morgan是 node.js 的 HTTP 请求记录器中间件。

Body-parser是 Node.js 请求体解析中间件。它会在处理程序执行之前,先通过中间件解析传入的请求体,该中间件位于 req.body 属性下。

所有模块安装完成后,在根文件夹中创建一个 app.js 文件,并在你喜欢的编辑器中打开它。我使用的是 Visual Studio Code,但你也可以使用任何你喜欢的文本编辑器。
基本设置:
在编辑器中打开 app.js 文件,并使用以下命令引入 express 模块:

var express=require('express')
Now create an express instance with
var app= express()
Enter fullscreen mode Exit fullscreen mode

路线

现在让我们定义一些路由。路由方法派生自 HTTP 方法之一,并附加到 express 类的实例。
以下代码是针对应用根目录的 GET 和 POST 方法定义的路由示例。


// GET method route

app.get('/', function (req, res) {
  res.send('GET request to the homepage')
})

// POST method route

app.post('/', function (req, res) {
  res.send('POST request to the homepage')
})
Enter fullscreen mode Exit fullscreen mode

Express支持与所有 HTTP 请求方法对应的方法:get、post 等等。完整列表请参阅 app.METHOD。
以下是一些基于字符串的路由路径示例。
此路由路径会将请求匹配到根路由 /。因此,如果您在 localhost:/ 中访问该应用,您的窗口中会打印出 root 信息。

app.get('/', function (req, res) {
  res.send('root')
})
Enter fullscreen mode Exit fullscreen mode

此路由路径将匹配对 /about 的请求。因此,如果您访问 localhost:/ 中的应用程序,您将在窗口上看到有关打印的内容

app.get('/about', function (req, res) {
  res.send('about')
})
Enter fullscreen mode Exit fullscreen mode

您还可以在路线中使用正则表达式,使您的路线更加动态。

路由参数

要使用路由参数定义路由,只需在路由路径中指定路由参数,如下所示。这将简单地输出所有参数,即 userId 和 bookId 作为对象。您还可以使用
req.params.paramname访问单个参数

app.get('/users/:userId/books/:bookId', function (req, res) {
  res.send(req.params)
})

Enter fullscreen mode Exit fullscreen mode

总结以上所有内容,
以下代码是一个非常基本的路线的示例。

var express = require('express')
var app = express()

// respond with "hello world" when a GET request is made to the homepage

app.get('/', function (req, res) {
  res.send('hello world')
})

app.get('/about', function (req, res) {
  res.send('about')
})

app.get('/:userId', function (req, res) {
  res.send(req.params.userId)
})

app.post('/post', function (req, res) {
  res.send('this is a post request')
})

// tell express to run on port 8000

app.listen(8000)
Enter fullscreen mode Exit fullscreen mode

这部分就到这里。

文章来源:https://dev.to/rubiin/getting-started-with-api-develpoment-on-nodejs-52bi
PREV
原子习惯:书评和备忘单 行为改变的四大法则 反转 身份 习惯记分卡 实施 意图 习惯叠加 环境 两分钟规则
NEXT
🤓 构建你自己的(在此处插入技术)