Python requests.compat() Examples
The following are 1
code examples of requests.compat().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
requests
, or try the search function
.
Example #1
Source File: remote.py From intake with BSD 2-Clause "Simplified" License | 4 votes |
def open_remote(url, entry, container, user_parameters, description, http_args, page_size=None, auth=None, getenv=None, getshell=None): """Create either local direct data source or remote streamed source""" from intake.container import container_map import msgpack import requests from requests.compat import urljoin if url.startswith('intake://'): url = url[len('intake://'):] payload = dict(action='open', name=entry, parameters=user_parameters, available_plugins=list(plugin_registry.keys())) req = requests.post(urljoin(url, '/v1/source'), data=msgpack.packb(payload, **pack_kwargs), **http_args) if req.ok: response = msgpack.unpackb(req.content, **unpack_kwargs) if 'plugin' in response: pl = response['plugin'] pl = [pl] if isinstance(pl, str) else pl # Direct access for p in pl: if p in plugin_registry: source = plugin_registry[p](**response['args']) proxy = False break else: proxy = True else: proxy = True if proxy: response.pop('container') response.update({'name': entry, 'parameters': user_parameters}) if container == 'catalog': response.update({'auth': auth, 'getenv': getenv, 'getshell': getshell, 'page_size': page_size # TODO ttl? # TODO storage_options? }) source = container_map[container](url, http_args, **response) source.description = description return source else: raise Exception('Server error: %d, %s' % (req.status_code, req.reason))