WSGI字节范围服务

2024-04-24 13:20:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在研究在WSGI服务器/应用程序中支持HTTP/1.1 Byte serving,用于:

  • 恢复部分下载
  • 多部分下载
  • 更好的流媒体

WSGI PEP 333提到WSGI服务器可以实现字节服务的处理(来自RFC 2616第14.35.2节定义了接受范围/范围/内容范围响应/请求/响应头),如果宣布了以下功能,应用程序应该实现它:

A server may transmit byte ranges of the application's response if requested by the client, and the application doesn't natively support byte ranges. Again, however, the application should perform this function on its own if desired.

我已经执行了一些google搜索,但是发现关于哪些可用的WSGI服务器/中间件/应用程序实现字节范围的信息很少?有没有人在这个领域有经验,能告诉我进一步挖掘的地方吗?在

编辑:有谁能评论一下,我怎样才能增强问题的答案呢?在


Tags: the服务器应用程序httpwsgiif字节application
2条回答

我认为webob可以做到这一点,请参阅file example的末尾,以获得有效地查找所服务文件的范围请求实现。在

您只需要使用WebOb并将响应创建为Response(conditional_request=True)或{a1},使conditional_request=True成为默认值。在

conditional_request=True并且请求一个范围时,WebOb的Response.app_iter_range包装完整的响应,只返回请求的范围。在

WebOb file serving example展示了如何实现自己的app_iter_range,在这种情况下,可以在不生成整个响应的情况下获得一个范围的字节。在

相关问题 更多 >