Vue.js 如何使用vuex和axios在共享主机中进行api调用?

Vue.js 如何使用vuex和axios在共享主机中进行api调用?,vue.js,url-rewriting,axios,vuex-modules,Vue.js,Url Rewriting,Axios,Vuex Modules,我对vue和vuex完全陌生。我的项目在本地运行得很好,但是当我尝试在服务器上运行它时,无论我做了多少尝试,我都无法更改API的请求URL 我明白了https://developers.thegraphe.com/api/v1/user/login作为我尝试登录服务器时的请求url,而正确的路由将是https://developers.thegraphe.com/member-directory/api/v1/user/login My.env文件定义了以下内容 APP_URL=https://

我对vue和vuex完全陌生。我的项目在本地运行得很好,但是当我尝试在服务器上运行它时,无论我做了多少尝试,我都无法更改API的请求URL

我明白了
https://developers.thegraphe.com/api/v1/user/login
作为我尝试登录服务器时的请求url,而正确的路由将是
https://developers.thegraphe.com/member-directory/api/v1/user/login

My.env文件定义了以下内容

APP_URL=https://developers.thegraphe.com/member-directory
BASE_URL=https://developers.thegraphe.com/member-directory
API_URL=https://developers.thegraphe.com/member-directory
我在config/app.php中将我的应用程序url设置为

'url' => env('APP_URL', "https://developers.thegraphe.com/member-directory"),
我正在进行这样的api调用

const state = {
    user: {},
    errors: {}
};
const getters = {};
const actions = {
    getUser({ commit }) {
        axios.get("/user/current")
            .then(response => {
                commit('setUser', response.data);
            })
    },
    loginUser({ commit }, user) {
        axios.post("/user/login", {
            email: user.email,
            password: user.password
        })
            .then(response => {
                if (response.data.access_token) {
                    //save token
                    localStorage.setItem("user_token", response.data.access_token)
                    console.log(response.data);
                    // window.location.replace("/app");
                } else {
                    commit('setError', response.data.errors);
                }
            })
    },
    registerUser({ commit }, user) {
        axios.post("/user/register", {
            IM_no: user.IM_no,
            name: user.name,
            dob: user.dob,
            phone: user.phone,
            email: user.email,
            password: user.password,
            password_confirmation: user.password_confirmation,
            gender: user.gender,
            designation: user.designation,
            classification: user.classification,
            company: user.company,
            blood_group: user.blood_group,
        })
            .then(response => {
                if (response.data.access_token) {
                    //save token
                    localStorage.setItem("user_token", response.data.access_token)
                    console.log(response.data);
                    window.location.replace("/app");
                }
                else {
                    commit('setError', response.data.errors);
                }
                // console.log(response.data.errors);
            })
            .catch(error => {
                console.log(error);
            })
    },
    logoutUser() {
        localStorage.removeItem("user_token");
        window.location.replace('/login');
    },
    getUsers() {
        axios.get("/user/all");
    }
};
const mutations = {
    setUser(state, data) {
        state.user = data;
    },
    setError(state, data) {
        state.errors = data;
    }
};

export default {
    namespaced: true,
    state,
    getters,
    actions,
    mutations,
}
import axios from 'axios'
export default axios.create({
    baseURL: 'http://developers.thegraphe.com/member-directory/api/v1',
    timeout: 5000,
})
我的主app.js文件

require('./bootstrap');

window.Vue = require('vue');

import 'material-design-icons-iconfont/dist/material-design-icons.css';
import Vuetify from '../plugins/vuetify';
import axios from "axios";

axios.defaults.baseURL = "https://developers.thegraphe.com/member-directory/api/v1"

Vue.config.productionTip = false;

import store from './store';
import router from './routes';
我还尝试在这样一个单独的文件中使用axios.create

const state = {
    user: {},
    errors: {}
};
const getters = {};
const actions = {
    getUser({ commit }) {
        axios.get("/user/current")
            .then(response => {
                commit('setUser', response.data);
            })
    },
    loginUser({ commit }, user) {
        axios.post("/user/login", {
            email: user.email,
            password: user.password
        })
            .then(response => {
                if (response.data.access_token) {
                    //save token
                    localStorage.setItem("user_token", response.data.access_token)
                    console.log(response.data);
                    // window.location.replace("/app");
                } else {
                    commit('setError', response.data.errors);
                }
            })
    },
    registerUser({ commit }, user) {
        axios.post("/user/register", {
            IM_no: user.IM_no,
            name: user.name,
            dob: user.dob,
            phone: user.phone,
            email: user.email,
            password: user.password,
            password_confirmation: user.password_confirmation,
            gender: user.gender,
            designation: user.designation,
            classification: user.classification,
            company: user.company,
            blood_group: user.blood_group,
        })
            .then(response => {
                if (response.data.access_token) {
                    //save token
                    localStorage.setItem("user_token", response.data.access_token)
                    console.log(response.data);
                    window.location.replace("/app");
                }
                else {
                    commit('setError', response.data.errors);
                }
                // console.log(response.data.errors);
            })
            .catch(error => {
                console.log(error);
            })
    },
    logoutUser() {
        localStorage.removeItem("user_token");
        window.location.replace('/login');
    },
    getUsers() {
        axios.get("/user/all");
    }
};
const mutations = {
    setUser(state, data) {
        state.user = data;
    },
    setError(state, data) {
        state.errors = data;
    }
};

export default {
    namespaced: true,
    state,
    getters,
    actions,
    mutations,
}
import axios from 'axios'
export default axios.create({
    baseURL: 'http://developers.thegraphe.com/member-directory/api/v1',
    timeout: 5000,
})
在currentUser.js中这样调用api

import myApi from '../../myApi'
...
myApi.get("/user/current")
我努力编码url值,比如
axios.post(“https://developers.thegraphe.com/member-directory/api/v1/user/login/“
但它不起作用

即使我删除了服务器中的currentUser.js文件,单击登录按钮,api也会被调用到错误的url

我也试图清除浏览器缓存,但没有成功

我一直在努力解决这个问题。感谢您的帮助。谢谢