aio-libs / aio-libs/aiohttp

Response content is omitted if it is erroneous

Open
#1,843 7 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
16.5k
Forks
2.4k
Avg merge
17h 22m
Merged PRs (30d)
212

Description

## Long story short

Some http response content could be broken, in this case caller should be able to allow access to raw response content.

## Expected behaviour

Disable the gzip decompression on demand and return the raw data.

## Actual behaviour

Changes due to set env variable, see below.

## Steps to reproduce

```
import aiohttp
import asyncio
run = asyncio.get_event_loop().run_until_complete
resp = run(aiohttp.request('get', 'http://www.rofu.de'))
#FlowControlStreamReader protocol
run(resp.read())
#b''
```
when `AIOHTTP_NO_EXTENSIONS=1`

```
import aiohttp
import asyncio
run = asyncio.get_event_loop().run_until_complete
resp = run(aiohttp.request('get', 'http://www.rofu.de'))
#FlowControlStreamReader protocol
len(run(resp.read())) # blocks and raises TimeoutError
```

## Your environment

python 3.5.2
aiohttp 2.0.7
ubuntu 16.04

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.