У меня есть следующий файл vue. Мой базовый URL-адрес REST API - http://localhost:8080/api/. Когда я получаю доступ к http://localhost:8080/api/dfc/system/docbases напрямую, я получаю ответ, как показано.
["gr_swy","SubWayX_DEMO"]
Но я хочу получить ответ через nuxt js, который работает на http://localhost:3000/restapi/. Я пытался следить за всеми статьями, но не мог понять, где я делаю не так.
<template>
<div class="container">
{{docbases}}
</div>
</template>
<script>
import axios from "axios";
#import axios from "../../.nuxt/axios"; (tried both)
export default {
methods: {
// asyncData({ req, params }) {
// return axios.get("http://localhost:8080/api/dfc/system/docbases")
// .then(res => {
// return { docbases: res.data };
// }).catch((e) => {
// error({ statusCode: 404, message: 'Not found' })
// })
// },
async asyncData ({ params }) {
const { data } = await axios.get('http://localhost:8080/api/dfc/system/docbases');
return { docbases: data }
}
},
head: {
title: "D2Rest"
}
};
</script>
Мой nuxt.config.js выглядит так: я пробовал changeOrigin с обоими значениями true и false. Не могли бы вы помочь мне, какие дополнительные вещи мне нужно настроить?
axios: {
proxy: true,
},
env: {
baseUrl: process.env.BASE_URL || 'http://localhost:3000'
},
proxy: {
'/api/': {
target: 'http://localhost:8080/',
pathRewrite: { "^/api": "" },
changeOrigin: false,
prependPath: false
}
},