nuxt сейчас-строитель serverFiles с подпапками - PullRequest
0 голосов
/ 30 октября 2019

При попытке использовать nuxt / now-builder я получаю 404 от сервера now для моих вызовов API. Мое приложение работает на dev и сейчас со статическим компоновщиком в сочетании с компоновщиком узлов. (Для динамических маршрутов мне просто нужно перейти на Nuxt Builder)

Это мой конфиг (простой, как может быть):

с использованием nuxt 2.8

now.json

{
  "version": 2,
  "builds": [
    {
      "src": "nuxt.config.js",
      "use": "@nuxtjs/now-builder",
      "config": {
        "serverFiles": [
          "api/**"
        ]
      },
    "routes": [
    {
      "src": "/_nuxt/.+",
      "headers": {
        "cache-control": "s-maxage=31536000"
      }
    },
    {
      "src": "^/(.*)",
      "dest": "/"
    },
    {
      "src": "/api/.*",
      "dest": "/api/index.js"
    }
     ]
    }
  ]
}

nuxt.config.js

serverMiddleware: [
    { path: '/api', handler: '~/api/index.js' }
  ]

axios: {
    baseURL: '',
    browserBaseURL: ''
  },

Я подозреваю, что проблема в структуре dir.

dir

мой api / index.html создает маршруты, используя микрорутер

const { run } = require('micro')
const { withNamespace, get, post } = require('microrouter')

const { authenticate, login } = require('./cognito')({
  ...Auth,
  clientSecret: process.env.COGNITO_CLIENT_SECRET,
  cookieSecret: process.env.COGNITO_COOKIE_SECRET
})

const routes = [
  post('/login', login),
]

const namespace = process.env.NAMESPACE || ''
const router = withNamespace(namespace)
const whitelist = ['/login'].map(path => `${namespace}${path}`)
const handler = authenticate(router(...routes), { whitelist })

module.exports = (req, res) => run(req, res, handler)

Теперь сборка прошла успешно, без ошибок. Но затем я получаю 404 для {host} / api / login от сервера now. Я считаю, что это маршрутизация, но это может быть и сама сборка serverMiddleware.

...