Http unit HttpUnit领域面临的挑战

Http unit HttpUnit领域面临的挑战,http-unit,Http Unit,声明仅在针对指定领域提出质询时发送授权标头。在这种情况下,挑战意味着什么?HttpUnit如何识别挑战?这是指HTTP身份验证的工作方式: 当第一次访问受保护的URL时,请求中不包含凭据,服务器将发回一个响应,该响应的状态代码为401 Unauthorized,WWW Authenticate标头设置为类似Basic realm=My realm的内容。这表示给定URL需要基本身份验证,并且领域名为“我的领域”。这是一个挑战-服务器通知用户代理它尝试访问的URL需要身份验证,并且它应该发回用户凭

声明仅在针对指定领域提出质询时发送授权标头。在这种情况下,挑战意味着什么?HttpUnit如何识别挑战?

这是指HTTP身份验证的工作方式:

当第一次访问受保护的URL时,请求中不包含凭据,服务器将发回一个响应,该响应的状态代码为401 Unauthorized,WWW Authenticate标头设置为类似Basic realm=My realm的内容。这表示给定URL需要基本身份验证,并且领域名为“我的领域”。这是一个挑战-服务器通知用户代理它尝试访问的URL需要身份验证,并且它应该发回用户凭据。用户代理通常会提示用户输入凭据,然后重试请求,这次将授权头设置为基本rXflcjMwYXxz,其中第二部分是Base64编码的用户名和密码对

对于链接到的HttpUnit方法,您将看到它需要一个领域、用户名和密码。我设想,当访问URL时,如果它从服务器返回一个401请求,它会将您传递给它的域与响应中的域进行比较;如果匹配,它将尝试使用提供的用户名和密码进行身份验证

参考资料:


当服务器响应401错误时,HttpUnit抛出AuthorizationRequiredException。我们可以使用异常的getParameterrealm来获取领域,并再次发送带有此领域名称的请求。

我有点困惑-这似乎无法回答您自己的问题,在这种情况下,挑战意味着什么?HttpUnit如何识别挑战?。这似乎是关于如何使用HTTPUnit获得域名的答案?我想我的帖子回答了你原来的问题。当然,你的帖子回答了这个问题,我已经把这个问题投了赞成票。我想说的是,你可以用这个方法从401响应中识别一个挑战,并获得所需的信息。