修复无法 GET /url 反应路由器

时间:2021-02-16 14:43:12

标签: node.js reactjs express react-router

const express = require('express')
const cors = require('cors')
const path = require('path');

const app = express()

app.use(express())
app.use(cors())
app.use(express.static(path.join(__dirname, 'client/build')))

app.get('/', (req, res)=>{
    console.log('server is up')
})

app.get('/data', (req, res)=>{
    res.send({name: 'name', age: 'age' })
})

app.listen(5000)

我无法获取 /URL。我想用 express 运行 build index.html 文件。反应路由器不工作。知道如何修复它吗?

1 个答案:

答案 0 :(得分:1)

假设它是一个 SPA(单页应用程序),您应该将所有请求路由到 index.html

像这样:

app.get('*', function(req, res) {
  res.sendFile('index.html', {root: path.join(__dirname, '../../client/build/')});
});