Rumah >pembangunan bahagian belakang >Golang >Go Kafka - nilai konfigurasi
Saya menggunakan go-kafka (https://pkg.go.dev/github.com/confluenceinc/confluence-kafka-go/kafka#configmap.get) dan menggunakan peta konfigurasi yang saya temui masalah dengan kaedah dapatkan.
Dokumentasi mengatakan get memerlukan kunci dan defval (jenis nilai konfigurasi), tetapi saya tidak tahu cara mencipta nilai konfigurasi untuk dimasukkan.
Ini yang saya cuba:
configfile := os.args[1] conf := readconfig(configfile) x := conf["sasl.password"] fmt.printf(conf.get("sasl.password", x))
configFile := os.Args[1] conf := ReadConfig(configFile) x := kafka.ConfigValue("Test") fmt.Printf(conf.Get("sasl.password", x))
Tetapi setiap kali saya mendapat ralat yang sama:
不能使用 'conf.get("sasl.password", x)' (type (configvalue, error)) 作为类型 (string, any) 或 string
Di mana silap saya?
Setakat penggunaan configmap.get
anda, anda tidak melakukan apa-apa yang salah.
Ralat yang anda lihat adalah disebabkan oleh penggunaan fmt.printf
anda.
Salah serta merta kerana get()
返回一个值和一个错误 ((configvalue, error)
),您试图将其直接传递到 printf()
, yang memerlukan rentetan yang mengandungi penentu format dan senarai pembolehubah untuk digantikan dengan sebarang nilai daripada spesifikasi format ini.
Anda perlu mendapatkan nilai configmap
dan menguji kesilapan:
v, err := conf.get("sasl.password", x) if err != nil { // handle/return the error }
Kemudian jika err
为 nil,您可以使用 %s
规范将值输出到 printf
dan lulus dalam nilai pulangan:
if err == nil { fmt.Printf("%s", v) }
Atas ialah kandungan terperinci Go Kafka - nilai konfigurasi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!