mirror of
https://github.com/silenceper/wechat.git
synced 2026-02-04 12:52:27 +08:00
* feat: 添加query 以及query单元测试 feat: 添加模板字符串解析以及模板字符串单元测试 * improve: 序列化请求参数,使得参数更易读 * delete: delete useless module * format: format code * docs: add function comment * docs: comment method * fix: fixed type convert error * feat: support any type * feat: support other type * format: format code * test: check logger * format: format code * test: udpate testing case * del: remove useless code * del: remove useless module * test: update testing case * ✨ feat: support for unsigned integers * ✨ feat: template string support any type
25 lines
596 B
Go
25 lines
596 B
Go
package util
|
|
|
|
import (
|
|
"fmt"
|
|
"strings"
|
|
)
|
|
|
|
// Query 将Map序列化为Query参数
|
|
func Query(params map[string]interface{}) string {
|
|
finalString := make([]string, 0)
|
|
for key, value := range params {
|
|
valueString := ""
|
|
switch v := value.(type) {
|
|
case int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64:
|
|
valueString = fmt.Sprintf("%d", v)
|
|
case bool:
|
|
valueString = fmt.Sprintf("%v", v)
|
|
default:
|
|
valueString = fmt.Sprintf("%s", v)
|
|
}
|
|
finalString = append(finalString, strings.Join([]string{key, valueString}, "="))
|
|
}
|
|
return strings.Join(finalString, "&")
|
|
}
|