用于micropython的urllib.urequest模块
micropython-urllib.urequest的Python项目详细描述
micropython lib中的http客户机
==
micropython lib目前提供4个http客户机模块:
*``urllib.urequest`
*``urequests`
*``uquests`
*``uaiohttpclient`
本自述文件旨在描述它们之间的差异,并帮助
为特殊用途。
*``urllib.urequest``实现api cpython标准库的一个子集
模块urllib.request。这个模块是所有三个模块中最小的
,它提供了一个高效的、基于流的api。它不支持自动重定向或分块传输编码。`` requests``自诩为“人类的http”,这意味着它的api不理想,实现效率低下。
``urequests`只实现了它的一个子集,并试图修复原型模块的一些糟糕的默认值。不过,它的效率比“urllib.urequest”要低。重定向是处理的,但不是分块传输编码。
*``uurequests``是对'urequests``版本0.8的捕获,在
打开为后者添加更多功能的大门之前。它为仍然需要api之类的请求的非常小的系统提供了
。
*``uaiohttpclient``是一个用于``uasyncio``模块的http客户端。这是所有3个支持分块传输编码的系统中唯一的一个。
可以尝试一下'uurequests'。
*如果开发异步应用程序,请使用'uaiohttpclient'。
*如果需要对更多http协议功能的支持,使用
``uaiohttpclient``并编写一个异步应用程序。
模块的未来:
*``urllib.urequest``旨在保持最小,不太可能获得更多的
功能(适用于大约80%的可能使用场景)。
*``urequest s`的DNA中有膨胀,因此,可能会慢慢增加更多的功能
以匹配上游模块,这将使其更不适合
低内存目标。
*``uurequests``被快照以解决这种低内存系统的支持问题。它是静态的,只打算应用关键的错误修复。
*``uaiohttpclient``可能会根据需要更新。
==
micropython lib目前提供4个http客户机模块:
*``urllib.urequest`
*``urequests`
*``uquests`
*``uaiohttpclient`
本自述文件旨在描述它们之间的差异,并帮助
为特殊用途。
*``urllib.urequest``实现api cpython标准库的一个子集
模块urllib.request。这个模块是所有三个模块中最小的
,它提供了一个高效的、基于流的api。它不支持自动重定向或分块传输编码。`` requests``自诩为“人类的http”,这意味着它的api不理想,实现效率低下。
``urequests`只实现了它的一个子集,并试图修复原型模块的一些糟糕的默认值。不过,它的效率比“urllib.urequest”要低。重定向是处理的,但不是分块传输编码。
*``uurequests``是对'urequests``版本0.8的捕获,在
打开为后者添加更多功能的大门之前。它为仍然需要api之类的请求的非常小的系统提供了
。
*``uaiohttpclient``是一个用于``uasyncio``模块的http客户端。这是所有3个支持分块传输编码的系统中唯一的一个。
可以尝试一下'uurequests'。
*如果开发异步应用程序,请使用'uaiohttpclient'。
*如果需要对更多http协议功能的支持,使用
``uaiohttpclient``并编写一个异步应用程序。
模块的未来:
*``urllib.urequest``旨在保持最小,不太可能获得更多的
功能(适用于大约80%的可能使用场景)。
*``urequest s`的DNA中有膨胀,因此,可能会慢慢增加更多的功能
以匹配上游模块,这将使其更不适合
低内存目标。
*``uurequests``被快照以解决这种低内存系统的支持问题。它是静态的,只打算应用关键的错误修复。
*``uaiohttpclient``可能会根据需要更新。