从django的中间件直接返回请求的方法

yipeiwu_com6年前Python基础

实例如下所示:

#coding=utf-8
import json
import gevent
from django.http import HttpResponse
from sdsom.web.recorder import get_event_type
from sdsom.web.recorder import get_request_event_info
from sdsom.db.rpcclient import get_db_client
class RecordEventMiddleWare(object) :
 def process_view(self, request, view, args, kwargs) :
 etype = get_event_type(request)
 if not etype :
  return None
 info = get_request_event_info(request, etype)
 info['status'] = "BEGIN"
 try:
  get_db_client().add_event_record(info)
 except :
  return HttpResponse(
   json.dumps({"susscess":0, "message":"记录事件开始到数据库出错"}),
   content_type='application/json'
   )
 return None

如上代码所示,需要从django的http模块导入HttpResponse类,

然后返回的时候可以把自己想要返回的字典内容用jsondump一把(如果不dump,上一层会处理报错)。

以上这篇从django的中间件直接返回请求的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python+AutoIt实现界面工具开发过程详解

Python+AutoIt实现界面工具开发过程详解

前言 不同于Linux服务器上的命令行操作,在windows系统上用户的使用习惯还是倾向于使用有界面的工具。如果工具是命令行交互操作的方式,可能是有悖于在windows上使用的操作习惯...

用python实现对比两张图片的不同

用python实现对比两张图片的不同

from PIL import Image from PIL import ImageChops def compare_images(path_one, path_two,...

Anaconda下安装mysql-python的包实例

Anaconda下安装mysql-python的包实例

Anaconda下需要使用Python与MySQL数据库进行交互,所以需要import一个mysql-python的包, 但是在ipython中引用的时候发现Anaconda并没有包含该...

对python 数据处理中的LabelEncoder 和 OneHotEncoder详解

如下所示: #简单来说 LabelEncoder 是对不连续的数字或者文本进行编号 from sklearn.preprocessing import LabelEncoder le...

python 实现在txt指定行追加文本的方法

如下所示: fp = file('data.txt') lines = [] for line in fp: lines.append(line) fp.close() l...