HeaderPlugin.single constructor
HeaderPlugin.single({
- required Map<
String, AsyncHeaderValueProvider> headers, - bool skipEmpty = true,
从单个 Header 提供器 Map 创建
headers key 为 header 名称,value 为异步获取 header 值的函数
skipEmpty 是否跳过空值,默认 true
示例:
HeaderPlugin.single({
'Authorization': () async => await getToken(),
'X-Platform': () async => Platform.isIOS ? 'ios' : 'android',
})
Implementation
factory HeaderPlugin.single({
required Map<String, AsyncHeaderValueProvider> headers,
bool skipEmpty = true,
}) {
// 将单个 header 提供器转换为统一的 provider
final providers = <AsyncHeaderProvider>[
() async {
final result = <String, String?>{};
for (final entry in headers.entries) {
result[entry.key] = await entry.value();
}
return result;
},
];
return HeaderPlugin(providers: providers, skipEmpty: skipEmpty);
}