如何在AsyncHttpClient中停止重定向并获取响应

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在AsyncHttpClient中停止重定向并获取响应相关的知识,希望对你有一定的参考价值。

我有一个HTTP GET返回状态200有一些回应。这个响应是由于重定向而给出的。

如果我在我的代码中引入asyncHttpClient.setEnableRedirects(false);,那么重定向就会停止,它会以状态302失败。但在我的应用程序中,这个状态302和与之相关的响应就是我所需要的。

我正在网上搜索并试图弄清楚,但我是Java的新手,因此无法理解如何实现这一目标。

我想要的是,当服务器返回状态302时,我想触发onSuccess并捕获响应。谢谢。

答案

如果我正确的你需要什么,那么你可以实现自己的AsyncHandler来响应不同的AsyncHandler.State为302状态代码。 (https://github.com/AsyncHttpClient/async-http-client#using-custom-asynchandlers)或在创建客户端停止时遵循这样的重定向:

asyncHttpClient(config().setFollowRedirect(false))

(它可能与您上面提到的方法不同。)

附:我正在使用asynchttpclient lib的2.5.2版本。

以上是关于如何在AsyncHttpClient中停止重定向并获取响应的主要内容,如果未能解决你的问题,请参考以下文章

重定向后停止连接

视频停止后如何重定向到主页

注销后如何停止 Symfony 重定向

在过滤器中重定向时停止进一步处理

如何停止从 localhost 重定向到 https

Windows:如何使用CreateProcess停止重定向Stdout的缓冲