Comments (1)
If you want to actually, you know, use HTTP in a standards-compliant manner, yes, you have to read and discard the chunked upload between requests. Otherwise pipelining breaks.
But the application itself doesn't have to do that. That's why WSGI apps return iterables: make the iterable a generator and you can choose when you send parts of the response. That's also why there's the write callable the application can access.
As a last resort, you can always prematurely close the socket, or even try shutting it down half-duplex. The client will get a connection terminated error at that point, and the server side will probably also log errors. You can get to the socket through the WSGI environment.
from gevent.
Related Issues (20)
- How to disable verbose output of the monitoring thread? HOT 1
- client hang with gevent time out HOT 1
- gevent.exceptions.InvalidSwitchError: Invalid switch into AsyncResult.wait(): None HOT 1
- gevent.timeout.Timeout: 0.0 seconds HOT 3
- Assertion failure in _sempahore.py
- AttributeError: module 'select' has no attribute 'epoll' HOT 2
- TypeError: memoryview: a bytes-like object is required, not 'str' HOT 1
- gevent.hub.LoopExit: This operation would block forever HOT 3
- Bad use of gevent: the Thread has created before patch_all, is_alive() always True HOT 3
- Test units with 0 ran tests (skipped) exit with code 5 on Python 3.12 HOT 7
- Logging lock not released when held by OS threads HOT 3
- error pip install await subprocess HOT 1
- Feature request - Queue.abort()
- multiprocessing.event.wait hang after gevent.monkey.patch_all HOT 1
- When running for a long time, the code frequently pending HOT 1
- gevent.exceptions.LoopExit: This operation would block forever HOT 1
- AssertionError: Thread.__init__() not called HOT 2
- ERROR running with gunicorn gevent._gevent_cgreenlet.Greenlet.run HOT 2
- 24.2.1 breaking on Github runner HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gevent.