JSON 简介
Posted cltt
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON 简介相关的知识,希望对你有一定的参考价值。
JSON(javascript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,易于人的编写和阅读,也易于机器解析。
JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。
JSON由两种结构组成:
- 键值对的无序集合——对象(或者叫记录、结构、字典、哈希表、有键列表或关联数组等)
- 值的有序列表——数组
对象是一个无序键值对的集合,以"{"开始,同时以"}"结束,键值对之间以":"相隔,不同的键值对之间以","相隔
{
"x" : 1,
"y" : "wfw"
}
数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
[3, 1, 4, 1, 5, 9, 2, 6]
原文链接:https://www.jianshu.com/p/1970a209672f
JSON 与 JS 对象的关系
var
obj = {a:
‘Hello‘
, b:
‘World‘
};
//这是一个对象,注意键名也是可以使用引号包裹的
var
json =
‘{"a": "Hello", "b": "World"}‘
;
//这是一个 JSON 字符串,本质是一个字符串
var
obj = JSON.parse(
‘{"a": "Hello", "b": "World"}‘
);
//结果是 {a: ‘Hello‘, b: ‘World‘}
json data values
@app.route("/login", methods=["POST", "GET"])
def login():
print(request.data) # 存放的是请求体中的原始信息 Content-Type:无法识别的类型
print(request.json) # 请求头中存在 Content-Type:application/json 将请求体中的数据 存放在JSON中
print(request.values) # CombinedMultiDict([ImmutableMultiDict([]), ImmutableMultiDict([(‘username‘, ‘123‘), (‘pwd‘, ‘123‘), (‘my_file‘, ‘‘)])])
print(request.values.to_dict()) # 这是个坑!!!{‘username‘: ‘123‘, ‘pwd‘: ‘123‘, ‘my_file‘: ‘‘}
return render_template("login.html")
以上是关于JSON 简介的主要内容,如果未能解决你的问题,请参考以下文章
json 可视代码工作室Angular with Firebase片段
Android 逆向类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )(代码片段
错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”