如何在高浪和回声框架中将json转换为字符串?

我有一个通过邮寄收到的 json

{"endpoint": "assistance"}

我收到这样的消息

json_map: = make (map[string]interface{})

现在我需要将其作为字符串分配给变量,但我不知道该怎么做。

endpoint: = c.String (json_map ["endpoint"])


不负相思意
浏览 74回答 2
2回答

三国纷争

执行此操作的一种类型安全方法是创建一个表示请求对象的结构并取消编组。这会使您对意外请求感到恐慌。package mainimport (    "encoding/json"    "fmt")type response struct {    Endpoint string}func main() {    jsonBody := []byte(`{"endpoint": "assistance"}`)    data := response{}        if err := json.Unmarshal(jsonBody, &data); err != nil {        panic(err)    }    fmt.Println(data.Endpoint)}// assistance该程序作为示例安全地将JSON解码为结构并打印值。

12345678_0001

您尝试实现的不是将 JSON 转换为字符串,而是将空接口转换为“您可以通过执行类型断言来实现此目的:interface{}stringendpoint, ok := json_map["endpoint"].(string)if !ok {  // handle the error if the underlying type was not a string}此外,正如@Lex提到的,使用Go结构定义JSON数据可能会更安全。这样,您的所有字段都将被键入,您将不再需要这种类型断言。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go