【已解决】Flask项目报错AttributeError: ‘Request‘ object has no attribute ‘is_xhr‘

文章目录

报错及分析

报错代码

python 复制代码
  File "/www/kuaidi/6f47274023d4ad9b608f078c76a900e5_venv/lib/python3.6/site-packages/flask/json.py", line 251, in jsonify
    if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_xhr:
AttributeError: 'Request' object has no attribute 'is_xhr'

分析

这个问题是后端代码中的问题。

根据错误日志,'Request' 对象没有属性 'is_xhr'。这是因为在较新的 Flask 版本中,'is_xhr' 属性已被废弃。为了解决这个问题,可以使用 'is_ajax' 属性来代替 'is_xhr'

可以将代码中的 not request.is_xhr 改为 not request.is_ajax,这样应该可以解决这个错误。

将以下部分:

python 复制代码
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_xhr:

更改为:

python 复制代码
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_ajax:

此时发现代码中并没有这句,其实这句代码是在flask代码中。比如观察本报错,路径为/www/kuaidi/6f47274023d4ad9b608f078c76a900e5_venv/lib/python3.6/site-packages/flask/json.py,修改这个文件中的对应行即可。

python 复制代码
  File "/www/kuaidi/6f47274023d4ad9b608f078c76a900e5_venv/lib/python3.6/site-packages/flask/json.py", line 251, in jsonify
    if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_xhr:
AttributeError: 'Request' object has no attribute 'is_xhr'

解决方案

必要的解决方法

将文件(文件路径看具体报错)
/www/kuaidi/6f47274023d4ad9b608f078c76a900e5_venv/lib/python3.6/site-packages/flask/json.py中的

python 复制代码
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_xhr:

更改为:

python 复制代码
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_ajax:

可能有用的解决方法

观察库的版本是否合适,比如调整Flask库,Werkzeug库。

相关推荐
小蒜学长1 分钟前
python餐厅点餐系统(代码+数据库+LW)
数据库·spring boot·后端·python
山土成旧客1 分钟前
【Python学习打卡-Day34】GPU为何“变慢”?从性能悖论到`__call__`的魔力
开发语言·python·学习
水龙吟啸5 分钟前
项目设计与开发:智慧校园食堂系统
python·机器学习·前端框架·c#·团队开发·visual studio·数据库系统
极客小云9 分钟前
【IEEE Transactions系列期刊全览:计算机领域核心期刊深度解析】
android·论文阅读·python
じ☆冷颜〃19 分钟前
基于多数据结构融合的密码学性能增强框架
数据结构·经验分享·笔记·python·密码学
无所事事的海绵宝宝23 分钟前
python基础
开发语言·python
dagouaofei26 分钟前
实测!6款AI自动生成PPT工具体验分享
人工智能·python·powerpoint
Font Tian26 分钟前
Pandas 3.0 全解:从默认字符串类型到 Copy-on-Write 的一场“内存模型重构”
python·重构·数据分析·pandas
轻竹办公PPT29 分钟前
写 2026 年工作计划,用 AI 生成 PPT 哪种方式更高效
人工智能·python·powerpoint
大模型铲屎官33 分钟前
【操作系统-Day 47】揭秘Linux文件系统基石:图解索引分配(inode)与多级索引
linux·运维·服务器·人工智能·python·操作系统·计算机组成原理