在我的应用程序中,我使用Axios来处理我的API请求。在main.js中,我设置了baseUrl。没有我提出请求,它仅通过设置baseUrl就可以单独发出请求,因此始终在将应用程序加载到浏览器中时出现。
在我的main.js axios.defaults.baseURL = 'https://domain.nl/path/to/my/api
一切正常,但是对baseUrl的请求会返回500,表示不请求数据。
main.js中的实现:
import axios from 'axios'
import VueAxios from 'vue-axios'
config:
axios.defaults.baseURL = https://domain.nl/path/to/my/api
axios({
withCredentials: true,
credentials: 'same-origin',
headers: { 'content-type': 'application/x-www-form-urlencoded' }})
然后在另一个文件中执行一个export default {}
,其中包含:
getLang(payload) {
payload.method = 'GET'
payload.url = 'lang';
return axios(payload).then(result => {
return result.data
});
}
有人知道如何取消此请求,还是有更好的方法来设置没有此“ bug”的baseUrl?
答案 0 :(得分:1)
我已尝试复制您的问题,但对我来说很好,您如何实施Axios?您使用的是哪个版本?
[EDIT]建议的解决方案
将此作为Nuxt插件
const axios = require('axios')
module.exports = axios.create({
baseURL: 'domain.nl/path/to/my/api'
})
您可以在下面的评论中找到更多信息
答案 1 :(得分:0)
import Vue from "vue";
import Axios from "axios";
Vue.prototype.$http = Axios;
Axios.defaults.headers.common = {'X-Requested-With': 'XMLHttpRequest'}
Axios.defaults.baseURL = (process.env.API_PATH !== 'production') ? 'http://localhost:8000/api/' : '';
确保baseURL不是baseUrl