JSON(JavaScript Object Notation)是一种轻量级的数据交互格式。
1. JSON数据格式:
json数据对象类似于JavaScript中的对象,不同之处在于json对象的属性名称和字符串值需要用双引号引起来,用单引号或者不用引号会导致读取数据错误。
# json数据格式
{
"name":"use",
"format":"json"
"type":["int", "str", "list", "dict"]
"other":{
"dict":"ok"
}
}
# 另一种json数据格式
["json", 123, "project"]
2. ajax与json:
ajax技术的目的是让javascript发送http请求,与后台通信,获取数据和信息。ajax技术的原理是实例化xmlhttp对象,使用此对象与后台通信。
ajax可以实现局部刷新,也叫做无刷新,无刷新指的是整个页面不刷新,只是局部刷新,ajax可以自己发送http请求,不用通过浏览器的地址栏,所以页面整体不会刷新,ajax获取到后台数据,更新页面显示数据的部分,就做到了页面局部刷新。
数据接口是后台程序提供的,它是一个url地址,访问这个地址,会对数据进行增、删、改、查的操作,最终会返回json格式的数据或者操作信息,格式也可以是text、xml等。
3. python处理JSON:
JSON数据格式转换成python的简单数据类型:
# 简单数据类型:int/float/string/tuple/list/dict/unicode
import json
json.loads(json_data)
python的简单数据类型转换成JSON数据格式:
import json
json.dumps(data)
4. flask中处理json:
Flask中也可以实用Python自带的json模块,也可以实用Flask中的jsonify,样例代码如下:
from flask import Flask, jsonify
app = Flask(__name__)
json_data = [
{"name":"json", "age":123}
]
@app.route('/jsontest', methods=['GET'])
def get_json():
return jsonify({'data': json_data})
app.run()