2019 02 18
事故类型
异常报警
事故过程
- 17:29 收到某一个用户的大量 550
事故时长
1 min
事故原因
客户使用了方法为 HEAD 的请求,导致 self.request_method
未定义
CommonBaseView 中相关代码如下:
super().__init__(request, *args, **kwargs)
if self.request_method == 'post':
self.request_param = request.POST.dict()
elif self.request_method == 'get':
self.request_param = request.GET.dict()
# TODO 优化,station上的字段应该做lazy loading,并不是每个请求都需要所有数据的
dbsess = StationDbReadSession()
事故反思
无
解决思路
在 CommonBaseView 中加上过滤条件,过滤掉非 GET/POST 的请求