请问nacos2 通过代码的方式读不到配置文件了吗?

请问nacos2 通过代码的方式读不到配置文件了吗?
Properties properties = new Properties();
properties.put(PropertyKeyConst.SERVER_ADDR, "8.219.105.104:8848");
properties.put(PropertyKeyConst.NAMESPACE, "dev");
ConfigService curtEnvConfigService = NacosFactory.createConfigService(properties);
String content = curtEnvConfigService.getConfig("dududu", "DEFAULT_GROUP", 5000);
properties.put(PropertyKeyConst.NAMESPACE, "dev");
太坑了,以前NAMESPACE是可以用name的,现在必须用id。

展开
收起
十一0204 2023-07-11 07:52:02 64 分享 版权
1 条回答
写回答
取消 提交回答
  • 是的,在Nacos 2.x 版本中,NAMESPACE 的配置方式发生了变化。在过去版本中,NAMESPACE 可以使用命名空间的名称来表示,但在较新的版本中,需要使用命名空间的 ID 来表示。

    假设您想要通过代码读取配置文件,并设置 NAMESPACE 为 "dev",可以按照以下方式修改代码:

    Properties properties = new Properties();
    properties.put(PropertyKeyConst.SERVER_ADDR, "8.219.105.104:8848");
    properties.put(PropertyKeyConst.NAMESPACE_ID, "namespaceId"); // 使用命名空间的 ID
    ConfigService configService = NacosFactory.createConfigService(properties);
    String content = configService.getConfig("dududu", "DEFAULT_GROUP", 5000);
    

    请注意,PropertyKeyConst.NAMESPACE 被替换为 PropertyKeyConst.NAMESPACE_ID,并且需要填入正确的命名空间 ID。

    如果您不清楚命名空间 ID,可以登录到 Nacos 控制台,在命名空间管理页面找到对应的命名空间,并获取其 ID 值。

    2023-07-28 16:04:19
    赞同 展开评论
问答标签:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

还有其他疑问?
咨询AI助理