gpt4 book ai didi

java - 从 HttpServletRequest 获取用户名和密码

转载 作者:行者123 更新时间:2023-12-04 05:37:38 27 4
gpt4 key购买 nike

我需要从 HttpServletRequest 获取用户名和密码处理基本认证。我有的是 CXF端点和基本身份验证拦截器。 HttpServletRequest我得到这样的:

public void handleMessage(Message message)            
throws Fault {
HttpServletRequest request = (HttpServletRequest) message.get(AbstractHTTPDestination.HTTP_REQUEST);

}

当我尝试调试代码时,我看到:
request.getAuthType() is null
request.getRemoteUser() is null

我随 Soap UI 的请求发送的用户名和密码。所以问题是我如何能够从请求中获取用户名和密码?

编辑

标题看起来像这样:
POST http://localhost:8011/GradIrelandUserRegistration HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: ""
Authorization: Basic UGF1bGl1czpQYXVsaXVzMTIz
Content-Length: 3170
Host: localhost:8011
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)

他们说授权是基本的,但是为什么要打电话 request.getAuthType()返回空?

最佳答案

我能够自己弄清楚。在 Soap UI 中,我需要将身份验证类型更改为:

Preemptive

然后使用:
AuthorizationPolicy policy = (AuthorizationPolicy) message.get(AuthorizationPolicy.class.getName());

现在我可以从策略对象获取用户名和密码。

关于java - 从 HttpServletRequest 获取用户名和密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11717768/

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