Created
May 11, 2023 11:20
-
-
Save SidJain1412/ac7713d170372f5f25513ef58d4c6c24 to your computer and use it in GitHub Desktop.
Calling a Streaming API using requests library in Python
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import requests | |
url = "http://127.0.0.1:8000/campaign/?prompt=Pepsi" | |
response = requests.get( | |
url, | |
stream=True, | |
headers={"accept": "application/json"}, | |
) | |
for chunk in response.iter_content(chunk_size=1024): | |
if chunk: | |
print(str(chunk, encoding="utf-8"), end="") |
Once the streaming response ends it should end the for loop, is it happening for you that the code is stuck in the loop?
just tried again, there's a timeout exception
poped up when the stream does not have incoming data for a while.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I'm using the sample code which almost the same as yours:
it works, but how to check the stream status afterwards? I did a simple test, once the http client(above code) to server has build, I then killed the server, the client code will stuck at resp.iter_lines() forever