从0到1手写网关之基于webhandler的网关

  1. 实现WebHandler接口
  • 通过请求路径获取服务名称
  • 通过rc拿到所有活着的服务实例
  • 负载均衡
  • 拿到请求的报文
  • 通过webclient发送post请求
  • 通过entity获取响应报文
  • 组装响应报文

图片

图片

  1. 添加映射处理器

在spring上下文加载完成后,添加网关的映射处理器。添加映射关系后,需要重新初始化上下文。

图片

  1. 添加前置过滤器

前置处理器模拟mock操作。

图片

  1. 添加后置过滤器

后置过滤器打印属性信息。

图片

  1. 测试
  • 启动注册中心
  • 启动服务提供者
  • 启动网关
  • 发起请求

图片

观察日志,经过了前置过滤器和后置过滤器,返回了调用结果。

图片