json - 如何检查字符串是否为json格式

标签 json go

我想创建一个函数来接收输入字符串,该字符串可以是 json 格式的字符串,也可以是字符串。例如,像下面的函数这样简单的东西。

func checkJson(input string){
   if ... input is in json ... {
      fmt.Println("it's json!")
   } else {
      fmt.Println("it's normal string!")
   }
}

最佳答案

对于正在寻找一种方法来验证任何 JSON 字符串而不考虑架构的其他人,请尝试以下操作:

func IsJSON(str string) bool {
    var js json.RawMessage
    return json.Unmarshal([]byte(str), &js) == nil
}

关于json - 如何检查字符串是否为json格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22128282/

相关文章:

batch-file - Windows下交叉编译Golang程序时限制环境变量为command

design-patterns - Go 并发模式 - 模式 #2

java动态属性表

scala 中的 JSON 反序列化 - 如果字段不存在则使用默认值

json - AngularJS 获取 JSON 的 HTTP 状态 0

javascript - 谷歌APIgapi.client.request不工作

go - Go语言内置的http服务器是生产服务器吗?

go - 转换兼容但不同的 map slice

forms - 最佳实践 : r. PostFormValue ("key") VS r.PostForm.Get ("key")

php - iOS URLSession 错误 "JSON text did not start with array or object and option to allow fragments not set."