我已经将VueJS项目部署到像www.example.com/demos/app,这样的域,但是当我从axios向api发送请求时,它是指向www.example.com/login而不是www.example.com/demos/app/login
下面是使用axios的请求代码
export const login = ({ dispatch }, { payload, context }) => {
return axios.post('/login', payload).then((response) => {
// do something
}).catch((error) => {
// handle erros
})
}发布于 2017-09-01 09:25:52
您可以这样做的一种方法是在页面的头部添加一个元标记(就像您对csrf所做的那样),然后在您的bootstrap.js文件中引用它:
头
<meta name="api-base-url" content="{{ url('demos/app') }}" />bootstrap.js (在window.axios = require('axios');下面)
window.axios.defaults.baseURL = document.head.querySelector('meta[name="api-base-url"]').content;希望这能有所帮助!
发布于 2017-09-01 09:12:14
在config.js中:
const CONFIG = {
API_URL_ROOT: 'http://localhost:8000/api/v1/',
}
export default CONFIG;可以设置axios默认值,如下所示:
import config from '../config.js';
axios.create({
baseURL: config.API_BASE_URL
});或者您可以通过从API_BASE_URL导入config来设置路径,然后每次使用axios进行get/post/put/delete调用时都指向它。
发布于 2019-10-13 07:32:35
Laravel附带了axios及其在bootstrap.js中导入的axios,因此只需转到bootstrap.js并添加如下内容:
window.axios.defaults.baseURL = 'http://example.test';您可以在window.axios.defaults.headers.common行之后添加这个
-Additional信息:
axios.create将创建一个具有自己的全局url和配置的实例。如果您有多个urls或配置,并且希望在不同的组件中使用它,请使用它。
https://stackoverflow.com/questions/45995502
复制相似问题