【发布时间】:2021-12-25 00:54:15
【问题描述】:
我想使用两个独立的代码库制作一个 Web 应用程序 - 使用 Spring Boot 构建后端,使用 sveltekit 构建前端。
此外,我希望在部署整个堆栈时只公开前端端点。
(例如:避免对后端 API 的任何形式的直接或垃圾邮件攻击)
这可能吗?
我很困惑,因为我发现的所有示例都使用localhost 来获取后端 API;并且永远不会,例如:公共 IP 地址。
如果我有这样的组件(伪代码):
ShowUserListComponent extends Component {
val users = null
fun fetchUsers() {
users = axios.fetch("localhost:8080/users")
}
render() {
<button onClick={fetchUsers}>
foreach(user in users) {
<div>{{ user.name }}</div>
}
}
}
这里的请求/响应和数据流是什么?像什么?:
- 用户访问地址
www.my-cool-page.com - sveltekit 将整个应用程序(HTML、CSS、javascript)下载到客户端(SPA 是这样工作的吗?)
- 用户导航到
/users路由->浏览器本地将组件更改为ShowUserListComponent - 如果后端的 API 不公开,本地组件如何获取数据?
【问题讨论】:
标签: reactjs spring-boot single-page-application vuejs3 sveltekit