从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中处理字符串的相关的len()方法的使用简介

 len()方法返回字符串的长度。 语法 以下是len()方法的语法: len( str ) 参数     NA 返回值 此方法...

详解Python循环作用域与闭包

前言 首先来看一段代码 x_list = [i for i in range(30)] y_list = [i for i in range(10, 20)] for y in y...

python使用opencv实现马赛克效果示例

python使用opencv实现马赛克效果示例

本文实例讲述了python使用opencv实现马赛克效果。分享给大家供大家参考,具体如下: 最近要实现opencv视频打马赛克,在网上找了一下基本是C++的实现,好在原理一样,下面给出p...

python 限制函数执行时间,自己实现timeout的实例

如下所示: # coding=utf-8 import signal import time def set_timeout(num, callback): def wr...

基于Python2、Python3中reload()的不同用法介绍

reload() 简介 作用:用于重新载入之前载入的模块 语法格式:reload(module) 参数:module为模块对象,必须已经被加载 返回值:返回模块对象 注意事项: 多次重复...