为了账号安全,请及时绑定邮箱和手机立即绑定

【金秋打卡】第10天 单表管理功能前后端开发

标签:
Spring Cloud

课程名称:Spring Cloud+ Vue前后端分离开发企业级在线视频系统

课程章节:第5章 单表管理功能前后端开发

讲师姓名:甲蛙老师

课程内容

大章列表查询功能前端页面开发:使用gateway路由转发,vue页面只访问gateway的端口,并解决gateway跨域问题,使用lb://+注册中心名称作路由转发

课程收获

使用gateway路由转发

# 9002地址对外隐藏,暴露9000地址 若访问localhost:9000/business/** 实际处理的是localhost:9002/business/**
spring.cloud.gateway.routes[1].id=business
spring.cloud.gateway.routes[1].uri=http://${eureka.instance.hostname}:9002
# 基于路径进行转发 只要路径包括"/business/**"就进行转发
spring.cloud.gateway.routes[1].predicates[1].name=Path
spring.cloud.gateway.routes[1].predicates[1].args[1]=/business/**

进行以上配置后,重启网关即可通过9000端口访问business的内容。

同时需要解决跨域问题,有一种根据还有网关的微服务项目更好的配置方法,在GatewayApplication.java中添加如下,同时将原来的CorsConfig注释掉。

推荐当单体SpringBoot应用时使用CorsConfig,而微服务项目使用网关时使用如下代码。

/**
 *
配置跨域
 
* @return
 */
@Bean
public CorsWebFilter corsFilter() {
  
CorsConfiguration config = new CorsConfiguration();

  
config.setAllowCredentials(Boolean.TRUE);
  
config.addAllowedMethod("*");
  
config.addAllowedOrigin("*");
  
config.addAllowedHeader("*");
  
config.setMaxAge(3600L);

  
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(new PathPatternParser());
  
source.registerCorsConfiguration("/**", config);

  
return new CorsWebFilter(source);
}

使用lb://+注册中心名称作路由转发

将网关的配置项

spring.cloud.gateway.routes[1].uri=http://127.0.0.1:9002

 

改成

spring.cloud.gateway.routes[1].uri=lb://business

表示使用负载均衡进行路由转发

https://img1.sycdn.imooc.com//636290400001605a16000874.jpg


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消