【发布时间】:2014-02-26 05:45:40
【问题描述】:
我对 django 有疑问,
就像用户提交一些数据后,会进入view.py处理,最终到达成功页面。
但是这个过程太长了。我不希望用户等待那么长时间。我想要的是用户提交数据后立即进入成功页面。服务器将在之后处理数据返回成功页面。
你能告诉我如何处理它吗? 那是我的代码,但我不知道为什么它不起作用。
url.py
from django.conf.urls import patterns, url
from hebeu.views import handleRequest
urlpatterns = patterns('',
url(r'^$', handleRequest),
)
view.py
def handleRequest(request):
if request.method == 'POST':
response = HttpResponse(parserMsg(request))
return response
else:
return None
def parserMsg(request):
rawStr = smart_str(request.body)
msg = paraseMsgXml(ET.fromstring(rawStr))
queryStr = msg.get('Content')
openID = msg.get('FromUserName')
arr = smart_unicode(queryStr).split(' ')
#start a new thread
cache_classroom(openID,arr[1],arr[2],arr[3],arr[4]).start()
return "success"
我的英文不好,希望你能理解。
【问题讨论】:
-
我之前也遇到过同样的情况,用ajax就好了!看这里stackoverflow.com/questions/18426456/…
标签: python django multithreading response httpresponse