当前位置: 首页 > news >正文

宁夏网站开发设计说明书深圳三玉网站建设

宁夏网站开发设计说明书,深圳三玉网站建设,网站推广免费推广网站,贵州省住房和城乡建设厅网站需求#xff1a;对于本次请求的cookie中#xff0c;如果userType不是vip的身份#xff0c;不予访问 思路#xff1a;因为要按照cookie参数进行判断#xff0c;所以根据官方自带的CookieRoutePredicateFactory进行改造 创建自己的断言类#xff0c;命名必须符合 xxxRout…需求对于本次请求的cookie中如果userType不是vip的身份不予访问 思路因为要按照cookie参数进行判断所以根据官方自带的CookieRoutePredicateFactory进行改造 创建自己的断言类命名必须符合 xxxRoutePredicateFactory 的规范其中xxx就是配置文件中 predicates 中的key我的类名是MyRoutePredicateFactory 所以配置文件中配置的就是 My 下面图中会标示继承统一的抽象类 AbstractRoutePredicateFactory完善断言类型(我使用的是官方也使用的短配置 shortcutFieldOrder )、构造方法以及断言逻辑方法 apply定义自己的内部配置类 Config 其中的 name 和 regexp 就是断言的属性和值(或者正则本次只判断值是否相等)需注意这里就不敢直接自动生成set和get方法了因为官方要求的是Config中的属性所使用的set方法必须返回本Config对象如图 代码如下 import jakarta.validation.constraints.NotEmpty; import org.springframework.cloud.gateway.handler.predicate.AbstractRoutePredicateFactory; import org.springframework.cloud.gateway.handler.predicate.GatewayPredicate; import org.springframework.http.HttpCookie; import org.springframework.stereotype.Component; import org.springframework.validation.annotation.Validated; import org.springframework.web.server.ServerWebExchange;import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.function.Predicate;/*** 对于请求的cookie中如果userType不是vip不予访问*/ Component public class MyRoutePredicateFactory extends AbstractRoutePredicateFactoryMyRoutePredicateFactory.Config {//采用短配置另外还有一种长展开配置很繁琐public ListString shortcutFieldOrder() {return Arrays.asList(name, regexp);}//构造public MyRoutePredicateFactory(){super(MyRoutePredicateFactory.Config.class);}//断言逻辑 public PredicateServerWebExchange apply(MyRoutePredicateFactory.Config config) {return new GatewayPredicate() {public boolean test(ServerWebExchange exchange) {ListHttpCookie cookies (List)exchange.getRequest().getCookies().get(config.name);if (cookies null) {return false;} else {Iterator cookieIterator cookies.iterator();HttpCookie cookie;do {if (!cookieIterator.hasNext()) {return false;}cookie (HttpCookie)cookieIterator.next();} while(!config.regexp.equals(cookie.getValue()));return true;}}public Object getConfig() {return config;}public String toString() {return String.format(Cookie: name%s regexp%s, config.name, config.regexp);}};}//配置内部类Validatedpublic static class Config {NotEmptyprivate String name;NotEmptyprivate String regexp;public Config() {}public String getName() {return this.name;}public MyRoutePredicateFactory.Config setName(String name) {this.name name;return this;}public String getRegexp() {return regexp;}public MyRoutePredicateFactory.Config setRegexp(String regexp) {this.regexp regexp;return this;}} }配置文件如图 配置代码 spring:application:name: cloud-gateway #以微服务注册进consulcloud:consul: #配置consul地址host: localhostport: 8500discovery:prefer-ip-address: trueservice-name: ${spring.application.name}gateway:routes:- id: pay_routh1uri: lb://cloud-payment-servicepredicates:- MyuserType,VIP效果 · cookie中userType不是VIP时请求不受理 · cookie中userType是VIP时正常查询
http://www.w-s-a.com/news/807362/

相关文章:

  • 网站建设和网站网络推广网站建设软件定制
  • 站长工具网址查询全球云邮登陆网站
  • 宁波 住房和建设局网站网上发帖推广
  • 平面设计在线网站工业设计公司有哪些
  • 福州网站设计外包公司网站做的比较好
  • 如何设计网站首页网站开发综合技能实训心得体会
  • 用织梦做的网站好用吗w网站链接如何做脚注
  • 东莞做网站公司在哪哪里有网站培训的
  • 做宣传 为什么要做网站那重庆网站建设公司在线联系
  • 网站设计制作售价多少钱制作图片的软件是
  • 网站验证码目录简单带数据库的网站模版
  • 制作网站用c#做前台网站建设专题的意义
  • 广西建设职业技术学院教育网站牡丹区建设局网站
  • 网站后台怎么用ftp打开上海外贸进出口有限公司
  • 淘宝建设网站的意义大学生做那个视频网站
  • 如何提高你的网站的粘性建设银行流水网站
  • 微信h5在哪个网站做泰州专业网站制作公司
  • 现在.net做网站的多吗建设工程造价网
  • pc访问手机网站跳转违法网站开发人员
  • 网站前端做报名框wordpress 启动慢
  • 沈阳做网站客户多吗前端可以做网站吗
  • 网站设计规划书新媒体营销策略分析
  • dw个人网站主页怎么做天津工程信息建设网
  • 顺义做网站的公司网站页面设计基础教程
  • 安阳哪个公司做网站好企业没有做网站有的坏处
  • 网站开发有必要用php框架wordpress分页导航代码
  • wordpress建站seo鞍山制作网站哪家好
  • 网站空间流量查询上海门户网站制作
  • 网站开发技术是什么专业会的加强普法网站和普法网络集群建设
  • 上海建筑网站seo 推广