add_config_watcher报错

来源:29-5 python操作nacos配置

三生三途

2020-12-10

import nacos
import json
import time

SERVER_ADDRESSES = "127.0.0.1:8848"
NAMESPACE = "7a91908a-7797-4866-9b1e-3b6cd16b3050"  # 这里是namespace的id

# no auth mode
# client = nacos.NacosClient(SERVER_ADDRESSES, namespace=NAMESPACE)
# auth mode
client = nacos.NacosClient(SERVER_ADDRESSES, namespace=NAMESPACE, username="nacos", password="nacos")

# get config
data_id = "user-srv.json"
group = "dev"
# 返回结果为字符串
conf = client.get_config(data_id, group)
print(conf)

ld = json.loads(conf)
print(ld["name"])


def test_cb(args):
    print(args)


if __name__ == "__main__":
    client.add_config_watcher(data_id, group, test_cb)
    time.sleep(3000)

http://img1.sycdn.imooc.com/szimg/5fd2164e09ffa2e527241496.jpg

写回答

4回答

gongnanxong

2021-09-12

可以通过修改源码的方式 如果你是mac 系统 可以这样修改  在你报错的那一行 增加以下代码

elif sys_os=="Darwin":

                puller = Thread(target=self._do_pulling, args=(key_list, self.notify_queue))

                puller.setDaemon(True)


2
2
尼克2018
大佬牛逼!!!!!(破音)
2021-12-14
共2条回复

城中城

2022-06-16

最新的版本 已经没有这个问题了  我是3.9.1

正常按照教程来就可以了

0
0

Pseud

2021-01-01

貌似python3.8和3.9都不行,换成3.7可以了。

0
0

三生三途

提问者

2020-12-10

拉取配置是可以的,但是一监听就报错,注释掉监听就没事。。我是python新手,网上搜了一下好像是多线程的问题,请教一下这里该怎么办啊

0
14
尼克2018
回复
bobby
好的老师。
2021-12-14
共14条回复

Go+Python打造电商系统 自研微服务框架 抓紧高薪机遇

快速转型Go工程师,成为具备双语言后端能力的开发者

508 学习 · 530 问题

查看课程