Django 视图中长时间、缓慢的操作会导致超时。有什么办法可以让 Python 代替 AJAX 说话吗?

2023-12-19

我从事 Python 编程已经有一段时间了,但 DJango 和 Web 编程对我来说总体来说还是陌生的。

我在 Python 视图中执行了一个很长的操作。由于我认为 local() 函数需要很长时间才能返回,因此存在 HTTP 超时。公平地说,我理解那部分。

立即向用户返回 HTTP 响应,然后动态显示页面中某些 python 代码的结果的最佳方法是什么?我怀疑答案可能在于 AJAX,但我不确定如何从服务器上的 Python 提供客户端上的 AJAX,甚至不知道通常用来执行此类操作的模块。


Ajax 不需要服务器端任何特定的技术。您所需要的只是以客户端的某些 Javascript 可以理解的某种形式返回响应。 JSON 在这里是一个很好的选择,因为它很容易在 Python 中创建(有一个json2.6 中的库,Django 有django.utils.simplejson对于其他版本)。

因此,您需要做的就是将数据放入 JSON 形式,然后像发送任何其他响应一样发送它 - 即通过将其包装在HTTPResponse.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django 视图中长时间、缓慢的操作会导致超时。有什么办法可以让 Python 代替 AJAX 说话吗? 的相关文章

随机推荐