Nuxt.js在生产模式下从Express API获取状态400

问题描述 投票:0回答:0

我在本地mashine上使用Nuxt和Express API开发了一个应用程序。 这里一切正常。 它是带有axios的单身Nuxt应用程序。 Express API也是单个的。

现在,我将API和Nuxt应用程序放在服务器Ubuntu(Plesk)上。 现在,API + Nuxt应用程序正在运行,当我打开没有asyncData或async fetch的Nuxt页面时,它也可以正常工作。 但是,当我打开(重新加载)带有asyncData请求的页面时,出现错误:

服务器错误应用程序中发生错误,无法提供您的页面。 如果您是应用程序所有者,请检查日志以获取详细信息。

这正在工作:

  • 邮递员对在线API的请求(状态200)
  • 在没有asyncData的情况下转到页面,然后在没有重新加载的情况下单击链接(无SSR)

这不起作用:

  • SSR->使用API​​中的asyncData打开指向页面的直接URL(在服务器日志中,API的状态码为400)

这是我的简短测试代码:

表达

const express = require('express')
const app = express()
const port = process.env.PORT || 5555
const cors = require('cors')

app.use(cors())

app.get('/public', (req, res) => {
  res.send('response')
})

app.listen(port)

Nuxt.js

asyncData ({ $axios }) {
  return $axios.$get(`https://api.domain.com/public`)
  .then((res) => {
    return { data: res }
  })
}

有趣的是,当我向( https://jsonplaceholder.typicode.com/todos )请求时,asyncData正常工作。 这就是为什么我认为这是我的API中的问题

node.js rest express nuxt.js
© www.soinside.com 2019 - 2024. All rights reserved.