跳转到主要内容

基础HTTP服务客户端

项目描述

Build Status Coverage Status Latest Version Downloads

基础HTTP服务客户端。

默认情况下,它“要求”API端点的成功响应,否则会抛出异常。

Demands接受与requests.request相同的所有参数,并扩展requests.Session类,两者的文档:[Requests开发者接口](http://www.python-requests.org/en/latest/api/)

由Yola团队编写和使用,以支持我们的[免费网站构建器](https://www.yola.com/)

HTTPServiceClient概述

  • 创建服务客户端的基类

  • 为后代提供灵活的http错误处理方式

  • 在意外服务响应时抛出HTTPServiceError

  • 支持发送前和发送后钩子

用法

from demands import HTTPServiceClient

class MyService(HTTPServiceClient):
    def get_user(self, user_id):
        return self.get('/users/%s/' % user_id).json()

    def safe_get_user(self, user_id, default_user):
        response = self.get(
            '/users/%s/' % user_id,
            expected_response_codes=[404])
        return response.json() if response.is_ok else default_user


service = MyService(url='https:///')
user = service.get_user(1234)

传递给构造函数的任何参数也将用于每个请求

service = MyService(
    url='https:///',
    headers={'h1':'value'},
    auth=('username','pass'),
)

# sent with auth and both headers
user = service.get('/some-path', headers={'h2': 'kittens'})

测试

安装开发需求

pip install -r requirements.txt

使用以下命令运行测试

nosetests

API文档

要生成文档

cd docs && PYTHONPATH=.. make singlehtml

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。

源代码分发

demands-5.1.0.tar.gz (12.2 kB 查看哈希值)

上传时间: 源代码

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页