HTTPServer在Python中具有更大程度的控制

时间:2019-02-27 10:25:54

标签: python python-multithreading httpserver

我有一个很简单的问题,想用Python解决。

我希望具有以下行为的Web服务器:如果它收到对/work的POST请求,则应将其添加到工作队列并在附加的数据上执行某些功能。如果收到/cancel的POST请求,则应取消其当前任务。

不幸的是,我似乎能够获得BaseHTTPRequestHandler来处理多个请求的唯一方法是使用ThreadingMixIn,但这似乎不必要地复杂,因为我随后必须使用一组锁来防止并发执行多个工作任务。

我尝试使用不带BaseHTTPRequestHandler的{​​{1}}并只是剥离ThreadingMixIn中的线程,但这没有用,因为显然do_POST在连接{ BaseHTTPRequestHandler函数返回。

理想情况下,我正在寻找一个接口,该接口使我能够按自己的意愿关闭与客户端的连接,因此我可以在辅助线程中进行操作,并自己管理队列,而不必在do_POST在这方面的行为。

0 个答案:

没有答案