我在golang项目中使用了sjson。我想在项目中设置一些键值对。我有一个非结构化的动态对象。所以我不知道路径。就像下面这样:
{
"temp1": {
"temp2": {
"password": "123456",
"country": "turkey",
"temp3": {
"password": "789654"
}
}
}
}
我想将密码值编辑为“秘密”,但是在我的程序中我不知道路径。是否有前缀前缀等?我该如何处理此问题?
答案 0 :(得分:1)
我不使用sjson解决了它,而是使用了如下的递归函数:
func changePassword(myMap map[string]interface{}) {
for key, value := range myMap {
if key == "password" {
myMap [key] = "******"
}
if _, ok := value.(map[string]interface{}); ok {
changePassword(value.(map[string]interface{}))
}
}
}