This is a bit of a fudge, and was only tested against the Cheerlights API.
Detects JSON content type, parses out the content length and truncates the response body to length.
Should probably do this *before* decoding from utf-8.
Updates cheerlights.py API example to support XML, JSON and TEXT endpoints.
Creates a new ppwhttp library to hide the implementation detail of HTTP clients/servers from the examples.
Adds a new example - plasma_ws2812_http.py - showing how to expand rgb_http.py to use a WS2812 pixel strip.
Adds "secrets.py" and moves WIFI connection information there. ppwhttp will throw an error if it's missing.
As discussed on https://forums.pimoroni.com/t/pico-wireless-pack-fetching-data-from-web/17215/ the cheerlights.py example was stalling on the first HTTP request.
I have added a timeout in this case, so the code will stop waiting and retry after the 60second polling wait period. Users report this does the trick!