如何安装带有nextjs,节点和固态库的固态服务器?

时间:2020-05-23 01:00:31

标签: javascript node.js next.js solid-principles

我是nextjsnode-solid-server的新手。我有一个带有node和nextjs的简单应用程序。在我的应用程序的api / solid路由中,我试图添加一个坚固的服务器作为中间件,如下所示:

const Ldnode = require('ldnode')
const Solid = require('solid-server')
import initMiddleware from '../../lib/init-middleware'

// Initialize the cors middleware
const solid = initMiddleware(
  Solid()

)

export default async function handler(req, res) {
  // Run solid
  await solid(req, res)

  // Rest of the API logic
  res.json({ message: 'Hello Everyone!' })
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

export default function initMiddleware(middleware) {
  return (req, res) =>
    new Promise((resolve, reject) => {
      middleware(req, res, (result) => {
        if (result instanceof Error) {
          return reject(result)
        }
        return resolve(result)
      })
    })
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
但是,当我在浏览器中输入http://localhost:3000/api/solid时,只有固态服务器的index.html没有功能,如下图所示:

我也有GET http://localhost:3000/api/solid 401 (Unauthenticated)GET http://localhost:3000/common/css/bootstrap.min.css net::ERR_ABORTED 404 (Not Found)

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

node-solid-server是一个整体,可以用作独立的快速服务器或库,使您可以将其安装在现有的快速服务器中。另一方面,nextjs api路由在无服务器功能实现上运行。虽然您无法像这样在api路由中挂载node-solid-server,但是您可以独立运行它,并从nextjs应用程序对其进行请求。