這是nacos的壹個bug(可以說是命名不規範吧),具體可以參考其源碼com.alibaba.nacos.client.config.impl.ClientWorker#getServerConfig。代碼中tenant就是namespace,當不指定時,params裏面沒有tenant項,只有在指定了namespace時才會有這個請求參數。
添加配置時,如果namespace為public時,最終存入數據的tenant_id為StringUtils.EMPTY獲取的時候是沒有這個潛規則的。當我們在客戶端指定namespace=public時,就死活拿不到數據了.。其中namespace->tenant->tenant_id->namespaceId其實壹直扮演著壹個角色(即:命名空間)在這裏提兩點意見:1.既然自己制定了規則,那就要把規則落地.不然就必定會有人為此躺坑。2.所謂名不正言不順,同壹個東西在項目中盡量不要起多個名字。