我目前正在将nuxt.js用作w头无头cms的前端。当我在流域中加载RTF文本字段或图像块时,我无法附加或不知道如何附加wagtail服务器的完整基本URL,因此当它在nuxtjs网站上呈现时,解析为src="/media/images/image.png
最后,尝试在nuxtjs站点http://localhost:3000
上找到该图像,并且需要在on服务器端http://localhost:8000
上找到该图像。对于标准图像,我可以截取服务器基本URL并在其前面加上URL,但对于流域中的任何内容,则不能截取。
我不是100%地确定这是“正确”的方法,但是我设法通过添加服务器中间件来获取所需的东西,该中间件可以检测以目录/media
开头的任何内容并在服务器基本URL前面添加前缀。
// in nuxt.config.js
export default {
serverMiddleware:[
'~/serverMiddleware/redirects'
],
}
然后在`serverMiddleware / redirects.js中
export default function(req, res, next) {
if (req.url.startsWith('/media')) {
res.writeHead(301, {Location: `http://localhost:8000${req.url}`})
res.end()
} else {
next()
}
}
这是一个快速的解决方法,现在我看看是否有更好的方法。