Spring boot 如何使用Cloud Foundry为带有Vue前端和H2数据库的Spring Boot web应用程序提供服务?
我遵循了一个教程,使用Vue作为前端,使用spring boot作为后端。我编写前端并将生成的文件从Vue的dist文件夹放入spring boot web的Spring boot 如何使用Cloud Foundry为带有Vue前端和H2数据库的Spring Boot web应用程序提供服务?,spring-boot,vue.js,kubernetes,cloud-foundry,Spring Boot,Vue.js,Kubernetes,Cloud Foundry,我遵循了一个教程,使用Vue作为前端,使用spring boot作为后端。我编写前端并将生成的文件从Vue的dist文件夹放入spring boot web的src\main\resources\static文件夹 教程告诉我使用axios将数据传输到后端。其配置如下: var axios = require('axios') axios.defaults.baseURL = 'http://localhost:8090/api' 它在我的本地pc上运行良好。但我想把它放在云端运行。 我使用m
src\main\resources\static
文件夹
教程告诉我使用axios将数据传输到后端。其配置如下:
var axios = require('axios')
axios.defaults.baseURL = 'http://localhost:8090/api'
它在我的本地pc上运行良好。但我想把它放在云端运行。
我使用mvn clean install
构建jar。然后将其上传到IBM的CloudFoundry。
前端工作正常。但是,它不与后端通信。浏览器的控制台日志显示:
XHR failed loading: OPTIONS "<URL>".
4xhr.js:178 OPTIONS http://localhost:8090/api/login net::ERR_CONNECTION_REFUSED
XHR加载失败:选项“”。
4xhr.js:178个选项http://localhost:8090/api/login 网络::错误连接被拒绝
演示已上载
我还想包括H2数据库,但我尝试了,它只在mem模式或文件模式下工作。jdbc:h2:tcp://localhost/~/test
模式在云上不起作用。
那么如何让它在云上运行呢?有没有其他方法可以让Vue在没有axios的情况下与java后端对话?
或者,如果必须这样做,我可以配置CloudFoundry使链接正常工作吗?
或者如果CloudFoundry不能做到这一点,(我使用CloudFoundry只是因为它很简单,只需上传jar,无需配置)k8s能做到吗
XHR加载失败:选项“”。
4xhr.js:178选项网络::错误连接被拒绝
这是失败的,因为您的应用程序不再在本地计算机上运行,而是在CloudFoundry上运行。您需要更新axios.defaults.baseURL
设置,以引用绑定到应用程序的路由
您可以在配置中硬编码,虽然不太好,但确实有效,或者您可以引用由Cloud Foundry设置的VCAP_应用程序
环境变量,该变量包含有关应用程序的信息,包括绑定路由(可以有多个)。您可以阅读本文,选择路线并动态配置应用程序
例:
“VCAP\u应用程序”:{
“应用程序id”:“,
“应用程序名称”:“获取有关如何执行此操作的详细信息
尝试运行cf marketplace
查看您的提供商提供的服务列表。许多服务甚至有免费的分层服务计划,因此您可以尝试这些服务或将其用于小型应用程序和演示
希望有帮助
"VCAP_APPLICATION": {
"application_id": "<guid>",
"application_name": "<app-name>",
"application_uris": [
"app-name.apps.example.com",
"some-other-route.example.com"
],
"application_version": "df82308c-7add-4f2b-bb44-a58680084a79",
"cf_api": "https://api.system.example.com",
"limits": {
"disk": 1024,
"fds": 16384,
"mem": 64
},
"name": "<app-name>",
"space_id": "<space-guid>",
"space_name": "<space-name>",
"uris": [
"app-name.apps.example.com",
"some-other-route.example.com"
],
"users": null,
"version": "df82308c-7add-4f2b-bb44-a58680084a79"
}