gpt4 book ai didi

java - Jersey 客户端卡在 SAML GET 请求上

转载 作者:太空宇宙 更新时间:2023-11-04 12:21:49 27 4
gpt4 key购买 nike

我在使用 ApacheHttpClient4 使用 Java 向 SAML url ( https://en.wikipedia.org/wiki/SAML_2.0 ) 发送 GET 请求时遇到问题。我从上一个请求中获取的 Location header 中获取 url,返回 302。然后我对 url 执行 GET,其格式为 https://some.domain/?SAMLRequest=...&RelayState=...。 Jersey 以某种方式卡在上面并且永远不会发送实际的请求(我已经检查了 Charles 并启用了日志过滤器,但 GET 从未发生,它甚至没有尝试)。它卡在以下行:

PoolingClientConnectionManager - 连接请求:[路由:{tls}->http://127.0.0.1:8888->https://some.domain][总保持 Activity 状态:3;分配的路线:2 of 2;分配总数:20 中的 7]

最佳答案

这是一个困难的问题,但我最终通过向客户端添加 ClientFilter 来解决它,它只执行以下操作:

/**
* This class is only used to solve cases where a Client gets stuck in a redirect process.
*/
public class MyClientFilter extends ClientFilter {

@Override
public ClientResponse handle(ClientRequest clientRequest) throws ClientHandlerException {
return getNext().handle(clientRequest);
}
}

它设法强制客户端继续遵循重定向。

关于java - Jersey 客户端卡在 SAML GET 请求上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38786971/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com