source

laravel-vujs 프로젝트의 루트/베이스 URL을 설정하려면 어떻게 해야 합니까?

factcode 2022. 8. 19. 20:45
반응형

laravel-vujs 프로젝트의 루트/베이스 URL을 설정하려면 어떻게 해야 합니까?

VueJS 프로젝트를 다음과 같은 도메인에 도입했습니다.www.example.com/demos/app, 그러나 내가 api에 요청을 보낼 때 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
    })
}

이것을 실시하려면 , 페이지 선두에 메타데이터 태그를 추가하고(csrf 를 사용하는 경우와 같이), 그 태그를 참조해 주세요.bootstrap.js파일:

머리

<meta name="api-base-url" content="{{ url('demos/app') }}" />

bootstrap.syslog (아래)window.axios = require('axios');)

window.axios.defaults.baseURL = document.head.querySelector('meta[name="api-base-url"]').content;

이게 도움이 됐으면 좋겠네요!

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
});

또는 Import를 통해 경로를 설정할 수도 있습니다.API_BASE_URL부터config그리고 매번 포인팅할 때마다get/post/put/delete를 사용하여 호출하다axios

라라벨은 악리와 그 수입품들과 함께 출하된다.bootstrap.js에 접속해 주세요.bootstrap.js다음 내용을 추가합니다.

window.axios.defaults.baseURL = 'http://example.test';

다음에 추가할 수 있습니다.window.axios.defaults.headers.common

- 추가 정보:

axios.create는 독자적인 글로벌 URL 및 설정을 가진 인스턴스를 만듭니다.여러 URL 또는 설정이 있고 다른 컴포넌트에서 사용할 경우 사용합니다.

만들다vue.config.js프로젝트 루트 디렉토리에 (존재하지 않는 경우) -

에서vue.config.js-

module.exports = {
    publicPath: process.env.NODE_ENV === 'production'
        ? '/demos/app/'
        : '/'
}

다음에 행을 추가합니다.resources/js/bootstrap.js-

const {publicPath} = require("../../vue.config");
window.axios.defaults.baseURL = publicPath

언급URL : https://stackoverflow.com/questions/45995502/how-to-set-root-base-url-for-a-laravel-vujs-project

반응형