node.js - 如何让 npm 包 json-server 与 API Routes 一起运行
问题描述
我需要在pages/api/json-server/index.js 之类的文件中运行 npm 包 json-server ( https://www.npmjs.com/package/json-server )。下面是一个简单的快速服务器的样子,它可以作为持久性存储读取和写入文件 db.json。
我找到了本指南https://vercel.com/guides/using-express-with-vercel关于如何使用 Next API Routes 进行快速工作,但是当此代码启动时,如何使 json-server 工作对我来说并不明显它是自己的快递服务器。这是本文展示的构建“Routes API”服务器所需的内容。
const app = require('express')();
const { v4 } = require('uuid');
app.get('/api', (req, res) => {
const path = `/api/item/${v4()}`;
res.setHeader('Content-Type', 'text/html');
res.setHeader('Cache-Control', 's-max-age=1, stale-while-revalidate');
res.end(`Hello! Go to item: <a href="${path}">${path}</a>`);
});
app.get('/api/item/:slug', (req, res) => {
const { slug } = req.params;
res.end(`Item: ${slug}`);
});
module.exports = app;
这是来自 json-server 文档的自定义 json-server,仅使用 express 运行。
// server.js
const jsonServer = require('json-server')
const server = jsonServer.create()
const router = jsonServer.router('db.json')
const middlewares = jsonServer.defaults()
server.use(middlewares)
server.use(router)
server.listen(3000, () => {
console.log('JSON Server is running')
})
解决方案
推荐阅读
- intellij-idea - 依赖来自 Kotlin Gradle DSL 文件 build.gradle.kts 的外部项目
- reactjs - 反向framework7页面转换
- github - Debain/Composer 无法连接到 github(443 和 22)
- kubernetes - istio 是否可以通过 uri 路径的动态部分支持到不同服务的路由
- c# - 如何检查 TCP 缓冲区是否已满
- javascript - 我可以将#ID 列表合并到一个类中吗?
- android - 在android应用程序中扩展底部工作表对话框
- google-chrome-extension - 文本上的 Chrome 扩展工具提示(一个单词)
- jquery - Uncaught TypeError: $ is not a function / body.getScroll is not a function
- javascript - 来自javascript的google api:未捕获的TypeError:无法读取未定义的属性“授权”