我正在使用Axios的Electron Vue应用程序对我的Laravel服务器进行HTTP调用.在DevElectron 模式下,一切都很完美.但当我把我的Electron 应用程序安装到客户机上,所有的混乱都爆发了.我解决了一些问题,但这一个问题会杀了我.
简单地说,即使所有Axio成功返回,它们也会抛出一个我输入的错误.catch().说实话,我很困惑这怎么可能.例如,当我的程序加载时,它会进行一些调用以获取所需的信息.抛出错误并显示alert .我想那只是我的Laravel服务器.但数据被成功抓取并添加到应用程序中.
axios.post(`${this.$store.state.URL}/get_server_ticket_from_table?api=${this.$store.state.API}`, {
id: this.ServerTicketMove.Server1.id,
table: this.ServerTicketMove.currentTable
})
.then((response) => {
console.log(response)
if (typeof response.data.id != 'undefined') {
this.ServerTicketMove.ticket = response.data
}
})
.catch(() => {
alert('Did not get Servers Table Information. Cant Connect to Main Server.')
})
我在谷歌上搜索了一下,看到了一些关于CORS的帖子.所以我在我的Web服务器和Laravel上实现了这一点.这造成了更大的混乱.同样的错误,但这一次没有数据应用于任何东西.所以.然后()甚至没有被调用.除此之外,在启用CORS的情况下,我的Axios似乎正在使用选项的请求方法进行额外的HTTP调用.为什么?我认为CORS不能解决我的问题.
也在我的Electron Vue背景中.我重新开启了网络安全.因为开发的原因,它被关闭了.这并没有改变任何事情.
win = new BrowserWindow({
width: 275,
height: 640,
title: 'title',
// webPreferences: { webSecurity: false }
})
有人知道发生了什么吗?
EDIT - 1-14-2019
在发现错误"regeneratorRuntime未定义"后,我认为这是一个巴别塔问题.我已经跟踪了https://babeljs.io/docs/en/babel-polyfill/条,但我仍然得到了"再生时间未定义".Babel+Axios+Electron+Await/Sync是否可以无误地协同工作?我个人不想忽视"regeneratorRuntime未定义",如果可能的话,为这个问题找到一个可靠的解决方案.如果您有任何意见或需要我研究的东西,我将不胜感激!