请求URL后推送数据

Eli*_*rey 8 python wsgi

鉴于,当用户/foo在我的服务器上请求时,我发送以下HTTP响应(不关闭连接):

Content-Type: multipart/x-mixed-replace; boundary=-----------------------

-----------------------
Content-Type: text/html

<a href="/bar">foo</a>
Run Code Online (Sandbox Code Playgroud)

当用户进入/bar(将发送204 No Content以便视图不会更改)时,我想在初始响应中发送以下数据.

-----------------------
Content-Type: text/html

bar
Run Code Online (Sandbox Code Playgroud)

如何从初始响应中获得第二个触发此请求的请求?我打算可能创建一个花哨的[引擎支持multipart/x-mixed-replace(目前只有Gecko)] - 只有电子邮件webapp才能在没有任何JavaScript的情况下执行服务器推送和Ajax效果,只是为了好玩.

fli*_*ght 1

没有完整的答案,但是:

在你的问题中,你描述的是Comet风格的架构。关于 Python/WSGI 中对 Comet 风格技术的支持,有一个StackOverflow 问题,其中讨论了各种支持像 Comet 那样长时间运行的请求的 Python 服务器。

同样有趣的是 Python Web-SIG 中的这个邮件主题:“WSGI 可以处理异步响应吗?” 2008 年 5 月,Web-SIG 中就WSGI 中的异步请求主题进行了广泛的讨论。

最近的一个开发是evserver,一个轻量级 WSGI 服务器,它实现了Christopher Stawarz 于 2008 年 5 月在 Web-SIG 中提出的异步 WSGI 扩展。

最后,Tornado Web 服务器支持非阻塞异步请求。它有一个使用长轮询的聊天示例应用程序,与您的要求相似。