matlab.net.http.Credentials 类
命名空间: matlab.net.http
超类: handle
用于对 HTTP 请求进行身份验证的凭据
描述
Credentials
类指定用于发送请求消息的身份验证凭据。在 HTTPOptions
对象中指定 Credentials
对象。
RequestMessage.send
方法使用凭据响应来自服务器或代理的身份验证质询。身份验证质询位于 AuthenticateField
标头字段中,它指定一个或多个身份验证方案供服务器或代理接受以满足请求。
具体行为取决于身份验证方案。通常,MATLAB® 会在 Credentials
对象向量中搜索应用于请求 URI 并且支持指定的身份验证方案的对象。MATLAB 然后在 AuthorizationField
标头中重新发送具有正确凭据的原始请求。如果有多个适用的凭据,MATLAB 将使用最具体的 Credentials
对象,以支持最强的身份验证方法。如果存在重复的 Credentials
对象,MATLAB 将使用第一个。
要查看 MATLAB 自动实现的身份验证方案,请参阅 AuthenticationScheme
。如果服务器需要其他方案,或者您没有为所需的方案提供凭据,身份验证响应消息将返回 StatusCode 401 或 407。在此情况下,您必须自行实现适当的响应。
对于不需要 Username
和 Password
属性的方案,例如 Windows® 上的 NTLM,您可以使用默认的 Credentials
对象。默认的 Credentials
对象具有默认或空属性,并适用于所有受支持的方案和 URI。您的授权凭据来自登录时存储在系统中的信息,如 Kerberos 票证。要限制使用特定方案的条件,您可以指定其他属性,例如 Scope 和 Realm。例如,将这些值设置为对某些 URL 使用 NTLM,对其他 URL 使用 Kerberos,并拒绝那些从不匹配这些 URL 和方案的服务器发出的身份验证请求。
对于需要 Username
和 Password
属性的方案,如果 MATLAB 使用 Credentials
对象进行身份验证,则 MATLAB 会将结果保存在此对象中。MATLAB 可以在后续请求中应用这些凭据,而无需等待来自服务器的身份验证质询。要利用此捷径,请对同一或其他 HTTPOptions
对象中的后续请求提供相同的 Credentials
对象。
Credentials
对象是句柄对象,会在内部收集以前成功完成身份验证的信息。因此,您可以在后续消息中重用这些信息。如果您将此对象插入到多个 HTTPOptions
对象中,则每次使用时都可能会更新 Credentials
对象。如果您使用 copy
方法复制 Credentials
,则 MATLAB 只复制您设置的可见属性,而不复制内部状态。
matlab.net.http.Credentials
类是一个 handle
类。
创建对象
描述
obj = matlab.net.http.Credentials(Name,Value)
创建 HTTP 凭据并由一个或多个名称-值对组参数指定其他属性。Name
是属性名称,Value
是对应的值。您可采用任意顺序指定多个名称-值对组参数,例如 Name1,Value1,...,NameN,ValueN
。未指定的属性设置为默认值。
如果不带参数地调用此构造函数,则 Credentials
对象适用于所有 URI 和所有身份验证方案,因此允许相应的身份验证。但是,该对象仅适用于不需要用户名或密码的方案。例如,在 Windows 上,该对象支持使用登录用户凭据的 NTLM 和 Kerberos 身份验证。
属性
示例
版本历史记录
在 R2016b 中推出