Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
推荐的JSON结构_Json - Fatal编程技术网

推荐的JSON结构

推荐的JSON结构,json,Json,我正在使用一些提交的JSON作为REST端点的一部分。JSON包含一个属性来存储已提交的值,该值可以包含一些不同的数据类型,但也可以包含一个JSONObject,我们需要根据它是什么来处理它。所以它可能看起来像这样: { attribute1: value, attribute2: value, value: 12 } 也可以这样看: { attribute1: value, attribute2: value, value: [

我正在使用一些提交的JSON作为REST端点的一部分。JSON包含一个属性来存储已提交的值,该值可以包含一些不同的数据类型,但也可以包含一个JSONObject,我们需要根据它是什么来处理它。所以它可能看起来像这样:

{
     attribute1: value,
     attribute2: value,
     value: 12
}
也可以这样看:

{
     attribute1: value,
     attribute2: value,
     value: [
         "somevalue1",
         "somevalue2"
     ]
}
在处理文件数据列表时,也可以这样做:

{
     attribute1: value,
     attribute2: value,
     value: [
         "hash1",
         "hash2"
     ]
}
或者,在处理一个文件但处理更多文件信息时:

{
     attribute1: value,
     attribute2: value,
     value: {
         name: "filename.ext",
         data: "fileHash"
     }
}
我的问题是,在处理属性或值时,建议使用什么结构,这些属性或值可能会根据提交的内容而变化

然后为每个值设置不同的属性是否更好,即

{
     attribute1: value,
     attribute2: value,
     file: {
         name: "filename.ext",
         data: "fileHash"
     }
}
还是将其嵌套在以下值下更好:

{
     attribute1: value,
     attribute2: value,
     value: {
         file: {
             name: "filename.ext",
             data: "fileHash"
         }
     }
}
或者应该是在以下位置引入的类型属性:

{
     attribute1: value,
     attribute2: value,
     valueType: "file",
     value: {
         name: "filename.ext",
         data: "fileHash"
     }
}

提前谢谢你

最后一个对我来说似乎是最好的。您如何区分
对象
数组
,或其他任何东西?