通過下面的代碼,我可以從 Ansible 庫文件中獲取 yaml,結(jié)果如下:---dbtype: redisvsad: go0v當(dāng)試圖取消封印YAML時,我只得到:map[string]string(nil)我的目標(biāo)就是取消文件預(yù)檢,編輯數(shù)據(jù),重新存儲文件。如何實現(xiàn)解封以便編輯數(shù)據(jù)?package mainimport ( "fmt" "github.com/sosedoff/ansible-vault-go" "gopkg.in/yaml.v2")type Props struct { values map[string]string}func main() { str, err := vault.DecryptFile("/tmp/tmpvlt", `.NunY4hb33zWx!)`) if err != nil { panic(err) } props := Props{} err2 := yaml.Unmarshal([]byte(str), &props) if err2 != nil { panic(err2) } fmt.Println(str) fmt.Printf("%#v\n",props.values)}
1 回答
海綿寶寶撒
TA貢獻1809條經(jīng)驗 獲得超8個贊
您想執(zhí)行任何操作
var props map[string]string
或
err2 := yaml.Unmarshal([]byte(str), &props.values)
在您當(dāng)前的代碼中,取消封口程序無法訪問私有字段,即使您通過將其重命名為 來將其公開,也不會填充它,因為您的 YAML 沒有名為 的頂級鍵。valuesValuesvalues
- 1 回答
- 0 關(guān)注
- 90 瀏覽
添加回答
舉報
0/150
提交
取消
