告警处理 Unresolved attribute reference 'status_code' for class 'object'
代码中有如下告警:
1. Unresolved attribute reference 'status_code' for class 'object'
这个错误通常出现在使用Python进行编程时,尤其是在使用类似于Django或Flask这样的Web框架时。它意味着你尝试在一个类的实例中访问一个不存在的属性status_code
。在这个上下文中,'object'通常指的是Python中的基类object
,你可能预期这个属性是某个特定类的成员,但实际上object
并没有这个属性。
2. Unresolved attribute reference 'json' for class 'object'
这个错误通常出现在使用Python的类定义中,特别是在使用类型注解时。错误信息表明类 'object' 中有一个无法解析的属性引用 'json'。这通常意味着在类型注解中使用了一个不存在的属性或者方法 'json'。
class TestLogin:
def test_login(self):
url = 'http://127.0.0.1:80/api/mgr/signin'
data = {
'username': 'byhy',
'password': '88888888'
}
try:
res = requests.post(url, data=data)
assert res.status_code == 200
except BaseException as e:
print("错误信息:",e.args)
else:
print(res.json())
return res
原因是:
1. assert res.status_code == 200 时,需要确保 res是一个object(即python对象), 且该对象中有status_code
2. print(res.json()) 时, 需要确保 res是一个requests.Response对象, 只有当res是一个requests.Response对象时,才会继续执行后续的代码
处理后如下
import requests
class TestLogin:
def test_login(self):
url = 'http://127.0.0.1:80/api/mgr/signin'
data = {
'username': 'byhy',
'password': '88888888'
}
try:
res = requests.post(url, data=data)
if isinstance(res, object) and hasattr(res, 'status_code'):
assert res.status_code == 200
except BaseException as e:
print("错误信息:", e.args)
else:
if isinstance(res,requests.Response):
print(res.json())
return res
钟声敲响了日落,柏油路跃过山坡,一直通向北方的是我们想象,长大后也未曾经过~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现