问题标签 [next-connect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
764 浏览

node.js - 我在我的 nextJS 项目中使用“next-connect”时遇到了一个奇怪的错误,该项目已在 dev 中修复,但现在在 prod 中更糟

正如我在标题中所说,我正在使用一个名为“next-connect”的 npm 包来构建我的 api。我创建的每个 api 路由都遭受了这个错误。这是错误:

经过几分钟的尝试,我可以在 dev 中解决它。其中大部分是由于弄乱了 .env 文件。

这是我的 API Route 中的代码:

这里的代码来自 next-connect 包(错误报告中提到的那个):

0 投票
2 回答
304 浏览

javascript - Next.js 得到混淆的 API 响应

我正在尝试使用 Next.js 开发我的第一个应用程序,但发生了一些让我非常困扰的事情。

我的应用在第一次加载后发出 2 个请求,/api/me并且/api/feed

我的组件像这样获取数据:

我的问题是,有时当它重新加载时,响应会混淆。/feed返回一个数组和/me一个对象。重新加载时,有时两者/feed/me从 接收对象/me,有时它们都从 获取数组/feed,有时它可以正常工作。我没有找到任何人报告这样的错误,所以我假设它是我某处的错误。

/pages/feed/api.js

handler.js

controllers/feed.js

pages/api/me.js

0 投票
3 回答
3169 浏览

node.js - Multer 不使用 next-connect 返回 req.body 和 req.file

我正在使用 nextjs,我想上传一个文件,所以我使用 next-connect 来使用 multer

这是客户端代码:

我进行了搜索,发现的所有内容都与 nodejs 和 expressjs 有关,但与 next.js 无关。我不知道如何进行。

0 投票
1 回答
2577 浏览

reactjs - 如何使用 next-connect 处理 Next.js 中 getServerSideProps 中的错误

我正在使用 Next.js 和next-connect来处理中间件。

但是当我在内部使用多个中间件时,我在尝试处理错误时遇到了问题getServerSideProps

这是我在 getServerSideProps 中的代码,我刚刚使用几个中间件创建了一个处理程序,所以它们都运行,身份验证成功,用户数据应该传递给响应,但如果有任何失败,应该捕获错误并返回重定向到'/login'页面。

我没有在任何中间件中定义任何 try/catch 块,因此如果发生错误,可以在任何 api 页面或 getServerSideProps 块中处理。

当只有一个中间件时,每个似乎都可以,在调用verifySessionCookie时返回错误await handler.run(req, res),然后在 catch 块中处理。

但是,当使用代码中显示的 3 个中间件时,如果第一个中间件失败 ( verifySessionCookie),则错误不会在 catch 块中处理。

我尝试next()使用子句在每个中间件中进行调用finally),这样错误就会在 getServerSideProps 中被捕获,但是:

  • verifySessionCookie 执行,失败。
  • openDBConnection 执行,它不会失败。
  • retrieveUserInfo 执行,它失败了。

也许我在这里做错了什么,或者也许 next-connect 不打算以这种方式使用。如果一个中间件没有执行,我不知道如何处理错误。也许我应该在 getServerSideProps 中使用 (req, res) 参数调用独立的异步函数,并停止使用这个 next-connect 插件。

0 投票
0 回答
192 浏览

node.js - 如何测试使用 next-connect 的下一个 js api 路由?

我在这里关注了这篇文章,尝试在 Next.js 中测试一个简单的 api 路由。

本文使用node-mocks-http来模拟 req 和 res 对象。

它适用于普通的 next api(它不使用 next-connect,例如,在上面的文章中描述),但是当我尝试将它与使用 next-connect 的 api 一起使用时,jest 会引发超时错误。

看起来api没有响应,但是当我通过浏览器正常尝试时它可以工作。

0 投票
3 回答
94 浏览

reactjs - 与 MongoDB 的连接已打开

我正在使用NextJS开发一个项目,并将我的数据存储在MongoDB中,并且遇到 MongoDB 连接问题。

连接逻辑很简单:

  1. 用户连接到页面
  2. 页面联系我的 API 以获取页面信息
  3. 我使用中间件的 API 从 MongoDB 获取数据

根据逻辑,我只有一个用户连接到 mongoDB(系统用户)。但问题是我在 MongoDB 中打开了很多连接(见图。看来我的中间件没有关闭连接。这是我的代码还是 MongoDB 逻辑的问题?

PS 当我关闭我的本地项目时,MongoDB 连接数下降到 0。

这是我的系统连接 MongoDB 的中间件示例。

根据我的代码,如果我们有一个开放连接 - 使用开放连接。我从这个mongodb 教程中获取了上面的代码

我应该怎么办?

0 投票
1 回答
219 浏览

node.js - 下一个 js:错误中间件正在返回 res.status 未定义

我在 next.js 应用程序中使用 next-connect 来运行服务器端代码。我正在使用自定义错误中间件,但它抛出错误为

这是我的错误中间件

我在 api 文件夹内的页面中的路线

0 投票
0 回答
43 浏览

next.js - 使用 NextJS、next-connect 和 passport 时的套接字挂断

我正在尝试使用护照在我的 NextJS 应用程序中对用户进行身份验证。不幸的是,当我在我的 api 路由上使用 passport.authenticate() 时,它不会重定向。

我正在使用 passport-discord 通过 Discord 对用户进行身份验证。

0 投票
1 回答
64 浏览

node.js - 为下一个连接设置路由页面

我用next-connect设置了一个服务器。现在如何将请求移动到我的nextjs程序的pages文件夹?这是我的服务器 js 文件:

0 投票
1 回答
51 浏览

next.js - next-connect TypeError: handlers[(i++)] is not a function

我正在尝试使用“next-connect”库在 Next.js 中实现 route->middleware->endpoint api 方法。.post()在我将端点添加到下一个连接实例之前,一切都运行良好。

然后我添加了 .post() 端点

并得到这个错误TypeError: handlers[(i++)] is not a function

createUser当我在另一条路线上测试它时,该功能正常工作。

有什么建议么?会不会是“下一个连接”错误?