为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 Go 优雅地解析 URI?

如何使用 Go 优雅地解析 URI?

Go
Cats萌萌 2022-10-10 15:40:28
这是我在 etcd 中的 kafka 连接信息:kafka://user:passwd@10.10.172.222:9092?mechanism=PLAIN&protocol=SASL_PLAINTEXT当我从 etcd 获取信息字符串时,我想获取用户名user、密码passwd和主机10.10.172.222:9092。现在如何使用 Golang 优雅地解析 Kafka 连接信息?
查看完整描述

1 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

使用net/url库


kafkaUrl := "kafka://user@10.10.172.222:9092?mechanism=PLAIN&protocol=SASL_PLAINTEXT"


u, err := url.Parse(kafkaUrl)

if err != nil {

    // handle error

}

user := u.User.Username()

pass, isPassSet := u.User.Password()

host := u.Host // host or host:port

主机名和端口分开


hostname := u.Hostname()

port := u.Port()


查看完整回答
反对 回复 2022-10-10
  • 1 回答
  • 0 关注
  • 133 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信