DAY3-Flask项目

1.jsonify:

得到了从API获得的数据并返回,API返回的json数据被转化成dict,我们还需要把dict序列化:

return json.dump(result), 200, {'content-type':'application/json'}

Flask提供一种简化的方法(jsonify):return jsonify(result)

return jsonify(result)

2.视图函数拆分到单独文件中:

之前的fsher.py 文件中存在太多的视图函数:

from flask import Flask, jsonify
from helper import is_isbn_or_key
from yushu_book import YuShuBook
from config import DEBUG
app = Flask(__name__)
app .config.from_object('config')
@app.route('/hello')
def hello():
    return 'Hello!'

@app.route('/book/search/<q>/<page>')
def search(q, page):
    isbn_or_key = is_isbn_or_key(q)
    if isbn_or_key == 'isbn':
        result = YuShuBook.search_by_isbn(q)
    else:
        result = YuShuBook.search_by_keyword(q)
        # dict 序列化
    return jsonify(result)
  
if __name__ == '__main__':
    app.run(host='0.0.0.0', debug=app.config['DEBUG'])

将下面的代码剪切到book.py

@app.route('/book/search/<q>/<page>')
def search(q, page):
isbn_or_key = is_isbn_or_key(q)
if isbn_or_key == 'isbn':
result = YuShuBook.search_by_isbn(q)
else:
result = YuShuBook.search_by_keyword(q)
# dict 序列化
return jsonify(result)
# return json.dump(result), 200, {'content-type':'application/json'}

导入一些包后 app不能运行,导入app后没有用:

这里要了解Flask的路由

猜你喜欢

转载自www.cnblogs.com/xussi/p/9142898.html
今日推荐