authenticate属性

void authenticate=(Future<bool> f(Uri url, String scheme, String? realm)?)

设置当站点请求认证时将被调用的函数。

请求的URL、认证方案和来自服务器的安全域通过参数传入 f.urlf.schemef.realm

此函数返回一个Future,应在认证解决后完成。如果无法提供凭据,则Future应以 false 结束。如果可提供凭据,则应在用 addCredentials 添加这些凭据后,以 true 的值完成 Future

如果 Future 以 true 完成,则将使用更新的凭据重试请求,但是重试的请求不会携带原始请求有效载荷。否则响应处理将正常继续。

如果已知远程服务器要求对所有请求进行认证,建议直接使用 addCredentials,或手动将请求的 'authorization' 头部设置为,以避免失败的请求产生开销,或由于重试请求中缺少请求有效载荷而产生的问题。

实现

void set authenticate(
    Future<bool> Function(Uri url, String scheme, String? realm)? f);