You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
http: error: TypeError: object supporting the buffer API required
Also this error is thrown when files are included in x-www-urlencoded requests with http --form url file@/path/to/file (in case of multipart requests it fails with any fields)
http --debug output with versions and traceback is here
HTTPie 2.3.0
Requests 2.25.1
Pygments 2.7.4
Python 3.8.2 (default, Oct 22 2020, 20:12:25)
[GCC 5.5.0]
/home/envek/.asdf/installs/python/3.8.2/bin/python3.8
Linux 5.4.0-64-generic
<Environment {'colors': 256,
'config': {'default_options': []},
'config_dir': PosixPath('/home/envek/.config/httpie'),
'devnull': <property object at 0x7f7e9cce4130>,
'is_windows': False,
'log_error': <function Environment.log_error at 0x7f7e9cce2820>,
'program_name': 'http',
'stderr': <_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf-8'>,
'stderr_isatty': True,
'stdin': <_io.TextIOWrapper name='<stdin>' mode='r' encoding='utf-8'>,
'stdin_encoding': 'utf-8',
'stdin_isatty': True,
'stdout': <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>,
'stdout_encoding': 'utf-8',
'stdout_isatty': True}>
>>> requests.request(**{'auth': <httpie_aws_authv4.AWSAuth object at 0x7f7e9e7e52b0>,
'data': <MultipartEncoder: <generator object MultiValueOrderedDict.items at 0x7f7e9c69c970>>,
'headers': {'User-Agent': b'HTTPie/2.3.0', 'Content-Type': 'multipart/form-data; boundary=cb266ae3fb8a4cf89c8c9c8a40ba7f85'},
'method': 'post',
'params': <generator object MultiValueOrderedDict.items at 0x7f7e9c69c9e0>,
'url': 'http://localhost:8080/fileAttachments'})
http: error: TypeError: object supporting the buffer API required
Traceback (most recent call last):
File "/home/envek/.asdf/installs/python/3.8.2/bin/http", line 8, in <module>
sys.exit(main())
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/httpie/__main__.py", line 11, in main
exit_status = main()
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/httpie/core.py", line 79, in main
exit_status = program(
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/httpie/core.py", line 196, in program
for message in messages:
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/httpie/client.py", line 80, in collect_messages
prepared_request = requests_session.prepare_request(request)
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/requests/sessions.py", line 456, in prepare_request
p.prepare(
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/requests/models.py", line 320, in prepare
self.prepare_auth(auth, url)
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/requests/models.py", line 551, in prepare_auth
r = auth(self)
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/httpie_aws_authv4.py", line 60, in __call__
return aws_request.__call__(r)
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/aws_requests_auth/aws_auth.py", line 76, in __call__
aws_headers = self.get_aws_request_headers_handler(r)
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/aws_requests_auth/aws_auth.py", line 88, in get_aws_request_headers_handler
return self.get_aws_request_headers(r=r,
File "/home/envek/.asdf/installs/python/3.8.2/lib/python3.8/site-packages/aws_requests_auth/aws_auth.py", line 146, in get_aws_request_headers
payload_hash = hashlib.sha256(body).hexdigest()
TypeError: object supporting the buffer API required
The text was updated successfully, but these errors were encountered:
Thank you for raising this issue @Envek and following up. I'll keep an eye on the upstream issue you created to see if there is anything that needs to be done to get the fix.
First of all, thank you very much for this plugin! It works awesome, but not in the following use case:
When I'm trying to make a
multipart/form-data
request withhttp --multipart
and AWS Auth, like this:I'm getting following error:
Also this error is thrown when files are included in
x-www-urlencoded
requests withhttp --form url file@/path/to/file
(in case of multipart requests it fails with any fields)http --debug output with versions and traceback is here
The text was updated successfully, but these errors were encountered: