gpt4 book ai didi

json - 使用 `json:",string"` 返回对 ,struct 结构标签的无效使用,试图解码未引用的值

转载 作者:IT王子 更新时间:2023-10-29 01:33:38 26 4
gpt4 key购买 nike

当试图解析一个带有 float 值的 json 到以下结构的距离时

type CreateBookingRequest struct {
Distance float64 `json:"distance,string"`
DistanceSource string `json:"distanceSource"`
}

出现以下错误

json: invalid use of ,string struct tag, trying to unmarshal unquoted value into [34 100 105 115 116 97 110 99 101 34]%!(EXTRA *reflect.rtype=dto.CreateBookingRequest)

有没有办法让我避免错误/获得更好的错误消息?

编辑:我实际上希望 API 的用户传递一个字符串值,但如果他们出于某种原因传递一个非字符串值,我希望能够清楚地告诉他们,而不是这个难以阅读的错误消息。

最佳答案

我不得不使用有时引用数字有时不引用数字的 API。该服务的所有者不太可能修复它,所以我想出了一个简单的解决方法:

re := regexp.MustCompile(`(":\s*)([\d\.]+)(\s*[,}])`)
rawJsonByteArray = re.ReplaceAll(rawJsonByteArray, []byte(`$1"$2"$3`))

正则表达式有些低效,但我不相信我能够更快地实现某些东西。

关于json - 使用 `json:",string"` 返回对 ,struct 结构标签的无效使用,试图解码未引用的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29213974/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com