如何打通前端dist和后端jar?

简介: 前端dist和后端jar已经分别独立部署到服务器上,这篇博客是对下面两篇博客的延续。如何部署前端dist目录?如何部署后端jar包?


image.png

那么,怎样打通前后端,产出一个完整的线上项目呢?

这篇博客主要基于arya-spring-vue项目探索如何打通前端dist与后端jar,从而完成一个完整的包含前后端开发到运维的完整项目。

主要包含以下内容:

  • 如何暴露出一个公网可访问的接口,例如GET aryaapi.frankkai.cn/users?
  • 主机8080端口运行包含tomcat的jar包
  • 腾讯云服务器添加新的域名解析aryaapi.frankkai.cn到主机
  • arya-spring-vue-fe前端调用arya-spring-vue-be接口该如何修改配置?
  • 修改前端接口调用配置,重新打包上传dist
  • 修改服务端跨域允许域名,重新打包上传jar并重新运行
  • 如何使用nginx反向代理fooapi.bar.cn隐藏8080端口?
  • 添加nginx反向代理配置
  • 修改前端接口配置打包上传dist


如何暴露出一个公网可访问的接口,例如GET aryaapi.frankkai.cn/users?


  • 主机8080端口运行包含tomcat的jar包
  • 腾讯云服务器添加新的域名解析aryaapi.frankkai.cn到主机


主机8080端口运行包含tomcat的jar包


java -jar /usr/java/arya-spring-vue-be-0.0.1-SNAPSHOT.jar


腾讯云服务器添加新的域名解析aryaapi.frankkai.cn到主机


这里的主机指的是运行java服务端服务的主机。

可以使用curl aryaapi.frankkai.cn/users查看服务端接口是否成功部署。


9-11-30 15:19:56.554  INFO 17978 --- [nio-8080-exec-1] o.h.h.i.QueryTranslatorFactoryInitiator  : HHH000397: Using ASTQueryTranslatorFactory
Hibernate: 
    select
        user0_.id as id1_0_,
        user0_.age as age2_0_,
        user0_.CreateTime as CreateTi3_0_,
        user0_.email as email4_0_,
        user0_.name as name5_0_,
        user0_.sex as sex6_0_,
        user0_.UpdateTime as UpdateTi7_0_ 
    from
        Users user0_


[]%


看到spring有打印日志,curl也有正常返回,那么说明部署成功。


arya-spring-vue-fe前端调用arya-spring-vue-be接口该如何修改配置?


  • 修改前端接口调用配置,重新打包上传dist
  • 修改服务端跨域允许域名,重新打包上传jar并重新运行


修改前端接口调用配置,重新打包上传dist


https://github.com/arya-sprin...

修改前:


const config = {
  ARYA_SPRING_VUE_BE: "http://localhost:8080"
};
export default config;


修改后:


const config = {
  ARYA_SPRING_VUE_BE: "http://aryaapi.frankkai.cn:8080"
};
export default config;


修改服务端跨域允许域名,重新打包上传jar并重新运行


修改前:

.allowedOrigins("http://localhost:3000")


修改后:

.allowedOrigins("http://arya.frankkai.cn")


重新打包出jar包上传并运行。


如果不修改,会报403的错误。


这一步做完之后,其实就可以做到打通前端dist和后端jar了。

我们可以通过这样去访问应用:http://arya.frankkai.cn/index.html#/user


如何使用nginx反向代理fooapi.bar.cn隐藏8080端口?


  • 添加nginx反向代理配置
  • 修改前端接口配置打包上传dist


添加nginx反向代理配置


上面已经做到了前后端打通且可访问,但是在network中我们看到,接口调用是http://aryaapi.frankkai.cn:8080/spring/vue/readUsers的形式。

太暴露不好。有没有办法去掉8080端口呢?


那当然是nginx的反向代理了,配置如下:


    server {
        listen       80;
        server_name  aryaapi.frankkai.cn;
        location / {
            proxy_pass http://127.0.0.1:8080;
        }
    }


小插曲:添加了这个反向代理配置后,接口一直报405 Not Allowed。试了add_header添加可跨域头,可跨域源,重启nginx等等方法都不生效,最后重启机器居然好了。重启大法果然好。


修改前端接口配置打包上传dist


修改前:

const config = {
  ARYA_SPRING_VUE_BE: "http://http://aryaapi.frankkai.cn:8080"
};
export default config;


修改后:


const config = {
  ARYA_SPRING_VUE_BE: "http://aryaapi.frankkai.cn"
};
export default config;


重新打包上传dist包即可。


此时再访问http://arya.frankkai.cn/index.html#/user,接口调用就直接http://aryaapi.frankkai.cn/spring/vue/readUsers的形式了。


使用nginx反向代理fooapi.bar.cn隐藏8080端口成功!


原文:https://github.com/arya-sprin...

相关文章
|
6天前
|
开发框架 小程序 前端开发
圈子社交app前端+后端源码,uniapp社交兴趣圈子开发,框架php圈子小程序安装搭建
本文介绍了圈子社交APP的源码获取、分析与定制,PHP实现的圈子框架设计及代码编写,以及圈子小程序的安装搭建。涵盖环境配置、数据库设计、前后端开发与接口对接等内容,确保平台的安全性、性能和功能完整性。通过详细指导,帮助开发者快速搭建稳定可靠的圈子社交平台。
69 17
|
19天前
|
机器学习/深度学习 前端开发 算法
婚恋交友系统平台 相亲交友平台系统 婚恋交友系统APP 婚恋系统源码 婚恋交友平台开发流程 婚恋交友系统架构设计 婚恋交友系统前端/后端开发 婚恋交友系统匹配推荐算法优化
婚恋交友系统平台通过线上互动帮助单身男女找到合适伴侣,提供用户注册、个人资料填写、匹配推荐、实时聊天、社区互动等功能。开发流程包括需求分析、技术选型、系统架构设计、功能实现、测试优化和上线运维。匹配推荐算法优化是核心,通过用户行为数据分析和机器学习提高匹配准确性。
60 3
|
3月前
|
JSON 前端开发 Java
震惊!图文并茂——Java后端如何响应不同格式的数据给前端(带源码)
文章介绍了Java后端如何使用Spring Boot框架响应不同格式的数据给前端,包括返回静态页面、数据、HTML代码片段、JSON对象、设置状态码和响应的Header。
180 1
震惊!图文并茂——Java后端如何响应不同格式的数据给前端(带源码)
|
3月前
|
前端开发 小程序 Java
java基础:map遍历使用;java使用 Patten 和Matches 进行正则匹配;后端传到前端展示图片三种情况,并保存到手机
这篇文章介绍了Java中Map的遍历方法、使用Pattern和matches进行正则表达式匹配,以及后端向前端传输图片并保存到手机的三种情况。
32 1
|
3月前
|
存储 前端开发 Java
验证码案例 —— Kaptcha 插件介绍 后端生成验证码,前端展示并进行session验证(带完整前后端源码)
本文介绍了使用Kaptcha插件在SpringBoot项目中实现验证码的生成和验证,包括后端生成验证码、前端展示以及通过session进行验证码校验的完整前后端代码和配置过程。
371 0
验证码案例 —— Kaptcha 插件介绍 后端生成验证码,前端展示并进行session验证(带完整前后端源码)
|
3月前
|
前端开发 JavaScript Java
导出excel的两个方式:前端vue+XLSX 导出excel,vue+后端POI 导出excel,并进行分析、比较
这篇文章介绍了使用前端Vue框架结合XLSX库和后端结合Apache POI库导出Excel文件的两种方法,并对比分析了它们的优缺点。
1061 0
|
3月前
|
前端开发 JavaScript 小程序
前端uni开发后端用PHP的圈子系统该 如何做源码?
圈子系统系统基于TP6+Uni-app框架开发;客户移动端采用uni-app开发,管理后台TH6开发。系统支持微信公众号端、微信小程序端、H5端、PC端多端账号同步,可快速打包生成APP
|
3月前
|
前端开发 Java 数据库
springBoot:template engine&自定义一个mvc&后端给前端传数据&增删改查 (三)
本文介绍了如何自定义一个 MVC 框架,包括后端向前端传递数据、前后端代理配置、实现增删改查功能以及分页查询。详细展示了代码示例,从配置文件到控制器、服务层和数据访问层的实现,帮助开发者快速理解和应用。
|
27天前
|
存储 缓存 负载均衡
后端开发中的性能优化策略
本文将探讨几种常见的后端性能优化策略,包括代码层面的优化、数据库查询优化、缓存机制的应用以及负载均衡的实现。通过这些方法,开发者可以显著提升系统的响应速度和处理能力,从而提供更好的用户体验。
53 4
|
1月前
|
存储 前端开发 Java
深入理解后端开发:从基础到高级
本文将带你走进后端开发的神秘世界,从基础概念到高级应用,一步步揭示后端开发的全貌。我们将通过代码示例,让你更好地理解和掌握后端开发的核心技能。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的信息和启示。

热门文章

最新文章