def _get(self, base_url, parameters, headers=None): logger.debug( 'bpan: get(base_url={}, parameters={}, headers={})'.format( base_url, parameters, headers)) parameters['access_token'] = self.access_token req = Request('?'.join((base_url, urlencode(parameters)))) if headers: req.headers.update(headers) try: return urlopen(req).read() except HTTPError as e: return e.read()
def _post(self, base_url, parameters, data=b'', headers=None): logger.debug( 'bpan: post(base_url={}, parameters={}, headers={})'.format( base_url, parameters, headers)) if self.dry_run: logger.debug('bpan: dry_run') return b'' parameters['access_token'] = self.access_token if data: data, boundary = encode_multipart(data) req = Request( '?'.join((base_url, urlencode(parameters))), data.encode('ISO-8859-1')) req.add_header( 'Content-Type', 'multipart/form-data; boundary=%s' % boundary) else: req = Request( '?'.join((base_url, urlencode(parameters))), data) if headers: req.headers.update(headers) try: return urlopen(req).read() except HTTPError as e: return e.read()