报错及分析
报错代码
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
,这样应该可以解决这个错误。
将以下部分:
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_xhr:
更改为:文章来源:https://www.toymoban.com/news/detail-586368.html
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
,修改这个文件中的对应行即可。
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
中的
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_xhr:
更改为:
if current_app.config['JSONIFY_PRETTYPRINT_REGULAR'] and not request.is_ajax:
可能有用的解决方法
观察库的版本是否合适,比如调整Flask库,Werkzeug库。文章来源地址https://www.toymoban.com/news/detail-586368.html
到了这里,关于【已解决】Flask项目报错AttributeError: ‘Request‘ object has no attribute ‘is_xhr‘的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!