我发布了这篇文章 Externals API issue in Production - Reactjs。
我的 reactjs 应用是用 SSR 渲染的,在生产模式下我不能用 axios 进行 POST GET。
如果我渲染不使用 SSR 渲染,所有东西都可以在生产中工作。
你能告诉我这段代码有什么问题吗。
SSR:
这里我使用 Template(...)
app.get("*", (req, res) => {
const context = {}
const Markup = renderToString(
<StaticRouter location = {req.url} context={context}>
<Application/>
</StaticRouter>
)
if (context.url) {
return res.redirect(303, context.url)
}
const style1 = fs.readFileSync(path.join(CWD, "/client/style.css"));
const style2 = fs.readFileSync(path.join(CWD, "/client/stylesheets/main.css"));
const bootstrap = fs.readFileSync(path.join(CWD, "client/bootstrap.min.css"));
const mergeCss = (...file) => {
const files = [...file];
return files.join(" ")
}
res.status(200).send(Templates({
markup : Markup,
css : mergeCss(style1, style2),
topCss : mergeCss(bootstrap)
}))
})
当我使用这种样式来渲染 reactjs 时,它工作正常。 这里我使用 html。
app.get("*", (req, res) => {
res.sendFile(path.join(CWD, "/client/public", "/index.html"))
})
我的 SSR 有什么问题?