我正在使用Vue + axios,我在设置它时遇到了问题,所以基础url将根据网站的url而有所不同?
所以我的vue的localhost当然是:
http://localhost:8080
本地主机接口为:
http://webuilder.app
在服务器vue上是:
http://webuilder.co.uk
接口为:
http://api.webuilder.co.uk
因此,我使用webpack来组合常用库:
'vendor.js': ['vue', 'bootstrap', 'axios', 'popper.js', 'pace', 'vue-router', 'jquery'],
和我的全局配置:
import Popper from 'popper.js/dist/umd/popper.js';
import Pace from 'pace-js';
import Vue from 'vue';
import VueRouter from 'vue-router';
import Axios from 'axios';
Pace.start();
try {
window.$ = window.jQuery = require('jquery');
window.Popper = Popper;
require('bootstrap');
} catch (e) {}
window.Vue = Vue;
window.VueRouter = VueRouter;
window.axios = Axios;
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
let token = document.head.querySelector('meta[name="csrf-token"]');
if (token) {
window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
所以,如果我想做axios post,它工作得很好,但每次我必须告诉它它要去哪个域,是否有某种设置,以便当我在本地主机上时,域是webuilder.app,而如果它在Prod域上,则是api.webuilder.co.uk?
https://stackoverflow.com/questions/47755123
复制相似问题