六、前后端分离搭建(可选)

  • 完整工程源码:https://gitee.com/forwardxiang/spring-cloud-demo.git

6.1 创建前端工程

6.1.1 导入依赖

  • 由于是纯前端部署,除了继承父工程依赖外,只需要引入web依赖即可:

    <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    

6.1.2 编写启动类

  • 不需要Eureka等其他微服务,因此仅给出springboot的启动类注解即可:

    @SpringBootApplication
    public class LayUIApplication {public static void main(String[] args) {SpringApplication.run(LayUIApplication.class, args);}
    }
    

6.2 配置前端工程

6.2.1 配置前端服务的端口

  • 没有其他微服务,仅仅提供web访问,因此application.yml只需要配置端口即可:

    server:port: 80
    

6.2.2 导入前端资源

  • 在springboot默认静态资源目录:

    #查找源码中ResourceProperties类
    classpath:/META-INF/resources/
    classpath:/resources/
    classpath:/static/
    classpath:/public
    
  • 将js/css/图片等资源导入到static目录中,将HTML页面文件导入到public目录,结构如下:

6.3 前端服务请求

  • 前端采用layui框架,简单易用,但是需要注意有些细节,例如layui表单渲染的下拉框,在使用jQuery选中并更改数据后,需要使用layui表单重新(form.render(‘select’))渲染才会起作用。

  • 由于后端服务与本前端不在一个同源域中,因此需要在后端服务中配置跨域。以下是前端中发起Ajax的例子:

    $.ajax({type: "POST",url: "http://127.0.0.1:9091/bill/update" ,data: JSON.stringify(data.field),dataType: "json",contentType: "application/json; charset=UTF-8",success: function (vo) {if (vo.code === 200) {window.location.href = "table.html";} else {layer.alert("账单信息更新失败!" + vo.msg);}}
    });
    

6.4 后端服务跨域配置

  • 为了简化问题,这里先介绍没有网关,前端直接访问后端业务微服务的情况下,使用注解的方式配置跨域:

    @CrossOrigin //也可以注解在具体的方法上
    @RefreshScope
    @RestController
    @RequestMapping("bill")
    public class BillController {//省略
    }
    
  • 当外部访问经过网关时,无需在业务微服务配置跨域,若这两处都配置了跨域反而可能会因为回复的头部信息重复导致前端报错(除非在Gateway配置了去重操作),具体网关配置参考:5.3.2 Gateway配置跨域

SpringCloud工程搭建之前后端分离搭建(可选)相关推荐

  1. php node.js django,Vue.js和Django搭建前后端分离项目示例详解

    本篇文章主要介绍了Django+Vue.js搭建前后端分离项目的示例,具有一定参考价值,有兴趣的可以了解一下 在写这篇文章的时候,顺带学习了一下关于Markdown的使用方法. 笔者是个渣渣,一切都是 ...

  2. Nodejs搭建前后端分离开发模式下的微信网页项目

    原文链接:<Nodejs搭建前后端分离开发模式下的微信网页项目>- 陈帅华 本文涉及对前后端分离及微信网页项目中的前端如何在本地环境中开发与调试的思考. 主要问题 1.如何配置微信公众平台 ...

  3. vue项目内封装axios.,使用Mock,搭建前后端分离环境。Axios + Promise + Mock

    1.安装Mock npm install mockjs --save-dev 1.1加入相关Mock代码 在SRC目录下创建文件夹mock,在里面创建虚拟接口地址及数据: // mock/index. ...

  4. 前后端分离搭建的简单实现

    前言 本片博客描述欠缺,如果有细心的小伙伴有什么地方看不懂或者感觉写的有问题之处,请留言我,我会根据留言内容更改 搭建前后端分离 为什么要前后端分离 前后端分离是目前非常流行的一种开发模式,他的项目分 ...

  5. Laravel8 Sanctum API认证+Vue问卷 搭建前后端分离SPA应用

    Laravel8 Sanctum API认证+Vue问卷 搭建前后端分离SPA应用 1 Sanctum 扩展安装与配置 1.1 安装Sanctum 1.2 配置API中间件 1.3 跨域访问配置 1. ...

  6. SpringCloud微服务前后端分离开发中出现的弱智问题之(不支持当前请求方法)

    SpringCloud微服务前后端分离开发中出现的弱智问题之(不支持当前请求方法) 问题背景 问题解决 为什么说这是一个弱智问题,因为这多是编写代码不仔细造成的. 问题背景 当当后台API发布的接口与 ...

  7. linux的django路径,Ubuntu下使用Django搭建前后端分离的全栈项目

    README Ubuntu16.04: Python3.6.2: Django1.11: 开发工具使用了pycharm(Ubuntu): 2017-12-08:更新到留言板 第一步,在Linux环境中 ...

  8. ASP.NET Core 实战:使用ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目

    一.前言 这几年前端的发展速度就像坐上了火箭,各种的框架一个接一个的出现,需要学习的东西越来越多,分工也越来越细,作为一个 .NET Web 程序猿,多了解了解行业的发展,让自己扩展出新的技能树,对自 ...

  9. Jenkins搭建前后端分离项目流水线实战

    文章目录 项目简介 流水线建设 前端流水线pipline script nginx配置流水线pipline script 后端流水线pipline script 后端数据库初始化流水线pipline ...

最新文章

  1. apache+tomcat 搭建负载均衡系统
  2. 既然 JVM 有 Full GC,为什么还会出现 OutOfMemoryError?
  3. Android开发之自定义Spinner样式的效果实现(源代码实现)
  4. 我的MYSQL学习心得(4) : 数据类型
  5. Linux中修改weblogic默认IP,Weblogic 12c ip 地址改变如何配置
  6. 重庆高考计算机分数线,重庆高考历年分数线
  7. 过滤器 和 拦截器 6个区别,别再傻傻分不清了
  8. 3个阶段 项目征名_项目管理的3个关键动作:启动、推进、复盘
  9. 引用、取址运算符、解引用运算符——傻傻分不清楚
  10. WPF 邮箱输入框提示 和 手机号码验证 .
  11. 第二代支付系统商业银行行内接入系统总体设计(初稿)
  12. java转双层pdf文件_双层ofd转pdf时报错,带图片带坐标的那种格式
  13. vmware虚拟机设置静态ip地址
  14. logo免费设计app有哪些?好用的logo设计app分享
  15. 2014 抢票工具 纯java
  16. 什么是App分发?有哪些分发平台可以选择?
  17. Root后安装Xposed框架卡Logo问题
  18. 云计算技术基础【6】
  19. 微信iOS7.0.9更新!除了朋友圈可以评论表情包,还有这些你可能不知道的功能!
  20. linux 虚拟机桥接上网方式

热门文章

  1. Matebook D14 2020 OpenCore 黑苹果 hackintosh
  2. android adb命令安装和删除apk应用
  3. Linux 安装OpenSSL及解决遇到的问题
  4. 2022年福州医院三基考试生物化学与分子生物学测试题及答案
  5. is not a class or namespace name解决方法
  6. Resource not found: rgbd_launch ROS path [0]=/opt/ros/melodic/share/ros ROS path [1]=/opt/ros/melodi
  7. Mastering_Rust(译):内存,生命周期和借用(完+1)
  8. 淘宝、天猫用的Android框架V-Layout,赶紧收藏
  9. 编程语言在那些运用中
  10. lisp程序绘制大树_LISP – 树