代码地址

https://gitee.com/zjj19941/ZJJ_Neaten5.10/tree/master/ZJJ_Gateway/demo05

测试

  1. #设置路由:路由id、路由到微服务的uri、断言
  2. routes:
  3. - id: order_route #路由ID,全局唯一,建议配合服务名
  4. # uri参数可以直接去指定ip端口,也可以指定负载均衡lb开头
  5. #uri: http://localhost:8020 #目标微服务的请求地址和端口
  6. uri: lb://mall-order #lb 整合负载均衡器ribbon,loadbalancer
  7. predicates:
  8. # #Path路径匹配
  9. - Path=/order/**
  10. # Header匹配 请求中带有请求头名为 x-request-id,其值与 \d+ 正则表达式匹配
  11. - Header=X-Request-Id, \d+


访问: http://localhost:8888/order/findOrderByUserId/1
当Header里面的X-Request-Id的value是正整数的时候,能访问通过

image.png

当Header里面的X-Request-Id的value是不是正整数的时候,就访问报404错误.

image.png

当Header里面没有X-Request-Id属性也会报404错误
image.png