authenticate属性
设置当站点请求认证时将被调用的函数。
请求的URL、认证方案和来自服务器的安全域通过参数传入 f.url
、f.scheme
和 f.realm
。
此函数返回一个Future,应在认证解决后完成。如果无法提供凭据,则Future应以 false
结束。如果可提供凭据,则应在用 addCredentials 添加这些凭据后,以 true
的值完成 Future。
如果 Future 以 true
完成,则将使用更新的凭据重试请求,但是重试的请求不会携带原始请求有效载荷。否则响应处理将正常继续。
如果已知远程服务器要求对所有请求进行认证,建议直接使用 addCredentials,或手动将请求的 'authorization'
头部设置为,以避免失败的请求产生开销,或由于重试请求中缺少请求有效载荷而产生的问题。
实现
void set authenticate(
Future<bool> Function(Uri url, String scheme, String? realm)? f);