feat: 实现配置删除通知机制(deletedKeys)
- 服务端 fetchChangedConfigs 接口新增 deletedKeys 字段,返回已删除配置的 key 列表 - Go/Node.js/Python/Spring Boot 客户端支持解析 deletedKeys 并删除本地配置 - Spring Boot 客户端新增 removeConfigs 方法,同步更新 Spring Environment
This commit is contained in:
@@ -127,6 +127,17 @@ export class ConfigClient {
|
||||
}
|
||||
delete changedData['latest.fetch.timestamp'];
|
||||
|
||||
// 处理删除的配置
|
||||
const deletedKeysStr = changedData['deletedKeys'];
|
||||
if (deletedKeysStr) {
|
||||
const deletedKeys = deletedKeysStr.split(',');
|
||||
for (const key of deletedKeys) {
|
||||
delete this.configs[key];
|
||||
}
|
||||
console.info('[ConfigClient]', deletedKeys.length, 'configs deleted');
|
||||
delete changedData['deletedKeys'];
|
||||
}
|
||||
|
||||
const changed = {};
|
||||
for (const [k, v] of Object.entries(changedData)) {
|
||||
changed[k] = v;
|
||||
|
||||
Reference in New Issue
Block a user