当前位置: 首页>>代码示例>>Python>>正文


Python Response.raise_if_error方法代码示例

本文整理汇总了Python中response.Response.raise_if_error方法的典型用法代码示例。如果您正苦于以下问题:Python Response.raise_if_error方法的具体用法?Python Response.raise_if_error怎么用?Python Response.raise_if_error使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在response.Response的用法示例。


在下文中一共展示了Response.raise_if_error方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Resource

# 需要导入模块: from response import Response [as 别名]
# 或者: from response.Response import raise_if_error [as 别名]
class Resource(object):

    API_URL = 'https://api.usergrid.com'

    HEADERS = {
        'content-type': 'application/json'
    }

    def __init__(self, path=API_URL, headers=None, entity=None):
        self.path = path
        self.headers = headers or Resource.HEADERS
        self.entity = entity

    def __getattr__(self, item):
        path = os.path.join(self.path, item)
        return Resource(path)

    def __repr__(self):
        return '{}<{}>'.format(__name__, self.path)

    def __str__(self):
        return unicode({self.path: self.entity})

    @property
    def access_token(self):
        return self.headers.get('Authorization', '').rsplit('Bearer ') or None

    @access_token.setter
    def access_token(self, value):
        self.headers.update({'Authorization': 'Bearer {}'.format(value)})

    @access_token.deleter
    def access_token(self):
        self.headers.pop('Authorization', None)

    def get(self, **params):
        response = requests.get(self.path, params=params, headers=self.headers)
        self.response = Response(self, response)
        self.response.raise_if_error()
        return self.response

    def post(self, data=None, **params):
        data = utils.jsonify_data(data)
        response = requests.post(self.path, data=data, params=params, headers=self.headers)
        self.response = Response(self, response)
        self.response.raise_if_error()
        return self.response

    def put(self, data=None, **params):
        data = utils.jsonify_data(data)
        response = requests.put(self.path, data=data, params=params, headers=self.headers)
        self.response = Response(self, response)
        self.response.raise_if_error()
        return self.response

    def delete(self, **params):
        response = requests.delete(self.path, params=params, headers=self.headers)
        self.response = Response(self, response)
        self.response.raise_if_error()
        return self.response

    def query(self, query=None, options=None):
        options = options or {}
        if query:
            options = options.update({'ql': query})
        return self.get(**options)

    def update_query(self, updates, query=None, options=None):
        options = options or {}
        if query:
            options = options.update({'ql': query})
        return self.put(data=updates, **options)

    def login(self, username, password):
        entity = self['token'].get(grant_type='password', username=username, password=password)
        self.access_token = entity['access_token']

    def save(self):
        self.put(self.entity)

    @property
    def entities(self):
        for entity in self.response.entities:
            yield Resource(entity['uri'], self.headers, entity=entity)
开发者ID:benneic,项目名称:python-usergrid-client,代码行数:86,代码来源:resource.py


注:本文中的response.Response.raise_if_error方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。