Golang:go-querystring将struct编码为URL查询参数的库

简介: Golang:go-querystring将struct编码为URL查询参数的库

go-querystring is a Go library for encoding structs into URL query parameters.

译文:go-querystring 将struct编码为URL查询参数的Golang库

文档

安装

go get github.com/google/go-querystring

示例

package main
import (
    "fmt"
    "github.com/google/go-querystring/query"
)
// 注意:数据结构属性名需要大写
type Data struct {
    Name      string `url:"name"`
    Age       int    `url:"age"`
    IsStudent bool   `url:"isStudent"`
}
func main() {
    data := Data{
        Name:      "Tom",
        Age:       2,
        IsStudent: true,
    }
    value, _ := query.Values(data)
    output := value.Encode()
    fmt.Println(output)
    // age=2&isStudent=true&name=Tom
}

参考

「Go工具箱」推荐一个Google开发的将结构体快速拼接成url查询参数的工具


相关文章
|
10天前
|
存储 缓存 Android开发
安卓Jetpack Compose+Kotlin, 使用ExoPlayer播放多个【远程url】音频,搭配Okhttp库进行下载和缓存,播放完随机播放下一首
这是一个Kotlin项目,使用Jetpack Compose和ExoPlayer框架开发Android应用,功能是播放远程URL音频列表。应用会检查本地缓存,如果文件存在且大小与远程文件一致则使用缓存,否则下载文件并播放。播放完成后或遇到异常,会随机播放下一首音频,并在播放前随机设置播放速度(0.9到1.2倍速)。代码包括ViewModel,负责音频管理和播放逻辑,以及UI层,包含播放和停止按钮。
|
8天前
|
Go
【golang】Go 判断字符串是否包含指定字符
【golang】Go 判断字符串是否包含指定字符
9 1
|
3天前
|
SQL Go
Go语言之GORM框架(三)——Hook(钩子)与Gorm的高级查询
Go语言之GORM框架(三)——Hook(钩子)与Gorm的高级查询
|
1月前
|
Go
Golang标准库sync的使用
Golang标准库sync的使用
23 2
|
1月前
|
存储 网络协议 Go
7天玩转 Golang 标准库之 http/net
7天玩转 Golang 标准库之 http/net
28 2
|
1月前
|
Go 开发工具 git
7天玩转 Golang 标准库之 flag
7天玩转 Golang 标准库之 flag
19 2
|
1月前
|
Shell Go API
7天玩转 Golang 标准库之 os
7天玩转 Golang 标准库之 os
24 1
|
1月前
|
Go 索引
7天玩转 Golang 标准库之 sort
7天玩转 Golang 标准库之 sort
15 1
|
1月前
|
Prometheus 监控 Cloud Native
Golang深入浅出之-Go语言中的分布式追踪与监控系统集成
【5月更文挑战第4天】本文探讨了Go语言中分布式追踪与监控的重要性,包括追踪的三个核心组件和监控系统集成。常见问题有追踪数据丢失、性能开销和监控指标不当。解决策略涉及使用OpenTracing或OpenTelemetry协议、采样策略以及聚焦关键指标。文中提供了OpenTelemetry和Prometheus的Go代码示例,强调全面可观测性对微服务架构的意义,并提示选择合适工具和策略以确保系统稳定高效。
158 5
|
1月前
|
分布式计算 Java Go
Golang深入浅出之-Go语言中的分布式计算框架Apache Beam
【5月更文挑战第6天】Apache Beam是一个统一的编程模型,适用于批处理和流处理,主要支持Java和Python,但也提供实验性的Go SDK。Go SDK的基本概念包括`PTransform`、`PCollection`和`Pipeline`。在使用中,需注意类型转换、窗口和触发器配置、资源管理和错误处理。尽管Go SDK文档有限,生态系统尚不成熟,且性能可能不高,但它仍为分布式计算提供了可移植的解决方案。通过理解和掌握Beam模型,开发者能编写高效的数据处理程序。
158 1