Как загрузить JSON в Vue CLI без ошибки CORS - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть проект Vue. js, завернутый в приложение Electron. Из одного из моих компонентов (src/components/MoviesTable.vue) я делаю вызов ax ios в локальный файл JSON (public/data/multimedia.json), например:

axios.get('./data/multimedia.json').then(res => {
  this.movies = res.data.movies;
})

Когда я запускаю npm run serve, чтобы обслуживать приложение Vue, у меня нет проблем. Однако при сборке приложения Electron я получаю сообщение об ошибке:

Доступ к XMLHttpRequest в '... / multimedia-index-app / dist / data / multimedia. json' от источника 'NULL' был заблокирован политикой CORS: Запросы между источниками поддерживаются только для схем протоколов: http, data, chrome, chrome -extension, https.

Я пытался использовать прокси безрезультатно. Я знаю, что аналогичные вопросы о CORS задавались на SO, которые предлагают разные решения, но я новичок, и мне нужны более четкие инструкции, чем те, с которыми я сталкивался.

Пожалуйста, дайте мне знать если вам требуется дополнительная информация. Любая помощь в решении этой проблемы будет принята с благодарностью.

Заранее спасибо.

1 Ответ

2 голосов
/ 14 апреля 2020

Если файл JSON должен быть связан с приложением, вам не нужен Ax ios, вы можете загрузить его через Webpack:

import movies from './data/multimedia.json';

и использовать его в компоненте:

export default {
  data() {
    return {
      movies
    }
  }
}
...