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

在将响应发送到客户端之前注入全局响应标头

颜嘉福
2023-03-14
@Component
public class RequestLoggingFilter implements GlobalFilter {
    Log log = LogFactory.getLog(getClass());

    @Override
    public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
        String originalUri = exchange.getRequest().getURI().toString();
        Route route = exchange.getAttribute(GATEWAY_ROUTE_ATTR);
        URI routeUri = exchange.getAttribute(GATEWAY_REQUEST_URL_ATTR);
        log.info("Incoming request " + originalUri + " is routed to id: " + route.getId()
                + ", uri:" + routeUri+" with id:"+ exchange.getRequest().getId());
        return chain.filter(exchange);
    }

请建议

共有1个答案

燕青青
2023-03-14
        String id = exchange.getRequest().getId();
        exchange.getResponse().getHeaders().add("id",id);
 类似资料:
  • 我有两个spring boot rest控制器,我希望向客户端发送一个标准的JSON响应结构。 标准响应将由响应时间、api响应代码、状态、apiName、响应(根据api而有所不同)组成。见下文: 为了实现这一点,我创建了以下模型类: 为了创建一个通用的响应包装器,我创建了以下响应util类。 现在的问题是,我来自控制器的响应应该以标准方式序列化。下面是我的控制器方法。 在当前的实现中,我要做的

  • 问题内容: 在我的Django应用程序中,我想跟踪响应是否已成功发送到客户端。我很清楚,HTTP之类的无连接协议中没有“防水”方式来确保客户端已接收(并显示)响应,因此这不是关键任务功能,但是我仍然想在最近的可能时间。响应将不是HTML,因此无法从客户端进行任何回调(使用Javascript或IMG标签等)。 我可以找到的“最新”钩子是在中间件列表的第一个位置添加实现process_respons

  • 首先,我为拼写错误道歉,我是巴西人 我访问了下面的问题,但它没有帮助我解决问题 ERR_HTTP_HEADERS_SENT:将标头发送到客户端后,无法设置标头 我有一个方法,我从路由调用在第一个请求,它按预期工作 但在下一个命令中,它返回以下错误 我的代码 我尝试使用失败 这个方法返回一个从excel电子表格中读取的对象 服务器我的代码出错

  • 我是camel的新手,我正在尝试使用camel cxf组件创建一个soap WebService。我从骆驼的样本开始。我已经配置了一个使用cxf组件的路由,并添加了一个处理器来处理请求。我在用于处理服务的bean中收到了请求,但我无法将响应发送回客户机。提前致谢 Sysout语句被打印在控制台上,但我得到的是一个空正文的soap响应。 以下是我从浏览器访问http://localhost:9080

  • 我正在尝试创建一个简单的没有任何数据库的NodeJS和Express的REST API。我已经将所有数据存储在JSON文件中。数据是对象数组的形式。 我有像fund-name/: portId这样的路径。 所以我这样做: 当我点击网址 时,我收到以下错误: 错误[ERR_HTTP_HEADERS_SENT]:在ServerResponse.header(/home/username/Desktop

  • 问题内容: 要将内容发送给所有客户,请使用: 要从客户那里接收,您可以使用: 如何将两者结合起来,以便在从客户端接收服务器上的消息时,将消息发送给所有用户,但发送消息的用户除外? 我是否必须通过发送带有消息的客户端ID,然后在客户端进行检查来破解它,还是有一种更简单的方法? 问题答案: 这是我的列表 (已更新为1.0) :