在w中,如何设置v2 api将完整的基本url(例如http:// localhost:8000“)附加到Steamfield图片和RichText嵌入?

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

我目前正在将nuxt.js用作w头无头cms的前端。当我在流域中加载RTF文本字段或图像块时,我无法附加或不知道如何附加wagtail服务器的完整基本URL,因此当它在nuxtjs网站上呈现时,解析为src="/media/images/image.png最后,尝试在nuxtjs站点http://localhost:3000上找到该图像,并且需要在on服务器端http://localhost:8000上找到该图像。对于标准图像,我可以截取服务器基本URL并在其前面加上URL,但对于流域中的任何内容,则不能截取。

django nuxt.js wagtail
1个回答
0
投票

我不是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()
    }
}

这是一个快速的解决方法,现在我看看是否有更好的方法。

© www.soinside.com 2019 - 2024. All rights reserved.