我正在尝试使用 HTTPClient 将大量请求发布到使用基本身份验证保护的 Web 服务。尽管我使用的是 ThreadSafeClientConnManager,但 Apache HTTPClient 的基本身份验证实现似乎不是线程安全的。有时请求 header 不包含授权元素,这会导致 401。 是否有使用多线程基本身份验证的通用方法或最佳实践?
最佳答案
我最近遇到了同样的问题。 有这个记录的问题:https://issues.apache.org/jira/browse/HTTPCLIENT-1168 您似乎有两个选择:
- 为每个线程或请求创建一个 HttpContext
- 使用线程安全实现的 SyncBasicHttpContext
关于java - 如何在多线程 HTTP Client 环境中使用基本身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9470045/