写点什么

《Building REST APIs with Flask》读后感

作者:codists
  • 2025-06-30
    广东
  • 本文字数:1004 字

    阅读完需:约 3 分钟

一、 为什么读这本书?

之所以选择这本书其实是因为最近自己在梳理 JWT 的用法。自己曾参与过的一个项目虽然使用的是 Flask 开发,但是授权使用的 PyJWT,当时以为使用 PyJWT 是行业通用选择,就没有去过多了解。后面发现有人对 PyJWT 进行了封装,造了一个 Flask-JWT-Extended,所以想了解下“在 Flask 项目中,选择 Flask-JWT-Extended,还是 PyJWT?”,刚好这本书有提到,所以就打算读一读。

二、这本书写了什么?

从 2025 年 6 月 25 日至 2025 年 6 月 30 日,期间断断续续花了 6 天阅读完《Building REST APIs with Flask》。


该书介绍了两个项目:flask-mysql,author-manager,通过这两个项目介绍 Flask 的基本用法,开发 REST APIs 的流程。flask-mysql 介绍了如何在 Flask 项目中集成数据库。author-manager 介绍了注册登录功能,CRUD 操作、项目部署。


当然,虽然看完了这本书,但也没找到“在 Flask 项目中,选择 Flask-JWT-Extended,还是 PyJWT?”这个问题的答案,因为作者也没有说。

三、这本书特点

1.简短。

“简短”可能是这本书的唯一优点了,200 多页,两个项目。遇到问题的时候,代码改起来不至于太困难。

2.问题很多。

p41, 一个一个判断需要修改的参数,这种风格不好,如果参数很多的时候就很麻烦。


p42, 代码中无异常处理。


@app.route('/authors/<id>', methods = ['DELETE'])
def delete_author_by_id(id):
get_author = Authors.query.get(id)
db.session.delete(get_author)
db.session.commit()
return make_response("",204)
复制代码


p79, 日志的设置不是规范的做法,过于随便。


logging.basicConfig(
stream=sys.stdout,
format='%(asctime)s|%(levelname)s|%(filename)s:%(lineno)s|%(message)s',
level=logging.DEBUG)
复制代码


p91,使用 JWT 进行认证时只有 access_token, 没有 refresh_token。


还有很多很多问题,这里就不一 一列举了。

四、这本书适合什么样的人?

鉴于书中问题较多,同时这本书是 2019 年写的,现在是 2025 年了,大部分内容已经过时了,所以不推荐阅读。

五、推荐指数

按照 5 星的标准,本书推荐指数 1 颗星。

六、参考资料

1. 编程

(1)Kunal Relan: https://book.douban.com/subject/34825401/


(2)源码: https://github.com/Apress/building-rest-apis-with-flask

2. 英语

(1) Etymology Dictionary:https://www.etymonline.com


(2) Cambridge Dictionary:https://dictionary.cambridge.org


欢迎搜索及关注:编程人(a_codists)

发布于: 刚刚阅读数: 3
用户头像

codists

关注

公众号:编程人 2021-01-14 加入

Life is short, You need Python

评论

发布
暂无评论
《Building REST APIs with Flask》读后感_flask_codists_InfoQ写作社区