当前位置: 首页 > 知识库问答 >
问题:

如何防止springboot网关转发到链中的最后一个元素

云卓
2023-03-14

我正在使用springboot网关在我的微服务之间进行负载平衡请求

spring:
  application:
    name: gateway-service  
  cloud:
    gateway:
      routes:
      - id: baeldung
        uri: question.com/questions/444/ask
      - id: myOtherRouting
        uri:  answer.com/answers/333/answer

我的问题是,如果我发送了一个错误的请求,如“question.com/questhtml" target="_blank">ions/dasldkjasdas”,那么请求就会转发到应答。com/answers/333/answer既然这是我配置中的最后一个链,我该如何阻止它,并将notfound statuscode作为响应发送。我用过

filters:
            - SetStatus=NOT_FOUND

https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.2.0.RELEASE/reference/html/#setstatus-gatewayfilter工厂

但我认为这不是最好的方法。

共有1个答案

左康安
2023-03-14

您没有为路由定义指定任何谓词,这意味着它们都匹配任何传入请求。从Spring Cloud Gateway:

客户端向Spring Cloud Gateway发出请求。如果网关处理程序映射确定请求与Route匹配,则将其发送到网关Web处理程序。

路由:路由网关的基本构建块。它由ID、目标URI、谓词集合和过滤器集合定义。如果聚合谓词为true,则匹配路由。

由于您没有指定任何谓词,因此您的路由与传入的请求匹配,最后一个请求获胜。

 类似资料:
  • 在单链表中,我们知道最后一个节点的下一个指向,这样我们就可以通过遍历找到它。 如果单链表的最后一个节点指向某个中间节点,那么我们如何找到最后一个节点?

  • 这个密码笔http://codepen.io/PiotrBerebecki/pen/JKPeoY说明了我的问题。当我减小浏览器宽度时,右边的图标会被输入字段推到右边。有没有办法防止这种情况? 超文本标记语言: CSS: 解决方案: 如下所示,向中添加或已经解决了这个问题。

  • 问题内容: 图片我想获得一个特定的框架,你可以在图像中找到的“href”,我试图尽我可以,但我不能够得到的“href” 我尝试了上面的代码,我使用了该框架的Xpath并尝试获取该框架的href。链接:“ https://iaeme.com/ijciet/issues.asp?VType=8&IType=10&JType=IJCIET&PageNumber=1 ” 问题答案: 按照您共享以获取所有“

  • 我试图找出如何使列表中的最后一个flex项不扩展到容器的底部。它有一个contenteditable div,当有人输入多行文本时,我需要将其展开。 主要的灵活项目是一列中的3个div,标题栏宽度为100%,内容容器宽度为100%,有增长和收缩,页脚是灵活的,应该会导致内部容器收缩。 目前,当你在div.detail聊天输入中输入多行文本时,它确实会向上扩展,但也会向下推按钮。 这样地:

  • 问题内容: 考虑以下HTML: 和以下CSS: 就目前情况而言,Firefox目前与以下内容类似: 注意,第四项在第二和第三列之间分配。我该如何预防? 所需的渲染可能更像: 要么 编辑: 仅指定宽度以演示不需要的渲染。在实际情况下,当然没有固定的宽度。 问题答案: 正确的方法是使用闯入式CSS属性: 不幸的是,截至2019年10月,Firefox不支持此功能,但其他所有主流浏览器均支持此功能。使用

  • 我在Mongo DB Atlas中收集了一个用户名称。 它还在继续。 在节点中可以使用什么查询。js和mongoose找到集合中的最后一个元素了吗?当集合不断动态增加时,如何获取集合最后一个元素的id?