python3的flask中,request是否还有get_json()方法

  1. pycharm在python2环境中,会自动提示request.get_json()方法
  2. pycharm在python3环境中,只会提示request.get_data()方法
    • get_data默认返回时bytes数据,加参数as_text=True 转为文本
    • 再调用json.loads()方法就可以转换为字典了
  3. 开始以为在python3下flask已经取消get_json方法,之前用get_json用习惯了,突然没有很不方便
    • 我也想过自己封装一个,
    • 但最后在查阅flask的文档时,发现仍然是由get_json方法的,参数仍然一样
    • 自己写了一个测试,可以获取json数据,只是pycharm不提示而已
  4. 为什么会这样?
    • 在python2中,get_json这个方法,在flask的wrappers.py中
    • 在python3中,get_json这个方法,在werkzeug的wrappers的json.py中
    • 这样pycharm没有识别出来的问题。
原文地址:https://www.cnblogs.com/qumogu/p/14317010.html