mirror of
https://github.com/drewkerrigan/nagios-http-json.git
synced 2024-11-25 03:43:50 +01:00
fix missing type conversion for --data
The parameter --data is handled as type string, but the method urlopen() only accepts the datatype byte. Before this fix you will get: "TypeError: POST data should be bytes, an iterable of bytes, or a filer object. It cannot be of type str." This PR solves this.
This commit is contained in:
parent
e3ac06864d
commit
428a5a6d3a
@ -599,13 +599,15 @@ def main(cliargs):
|
|||||||
for header in headers:
|
for header in headers:
|
||||||
req.add_header(header, headers[header])
|
req.add_header(header, headers[header])
|
||||||
if args.timeout and args.data:
|
if args.timeout and args.data:
|
||||||
|
databytes = str(args.data).encode()
|
||||||
response = urllib.request.urlopen(req, timeout=args.timeout,
|
response = urllib.request.urlopen(req, timeout=args.timeout,
|
||||||
data=args.data, context=context)
|
data=databytes, context=context)
|
||||||
elif args.timeout:
|
elif args.timeout:
|
||||||
response = urllib.request.urlopen(req, timeout=args.timeout,
|
response = urllib.request.urlopen(req, timeout=args.timeout,
|
||||||
context=context)
|
context=context)
|
||||||
elif args.data:
|
elif args.data:
|
||||||
response = urllib.request.urlopen(req, data=args.data, context=context)
|
databytes = str(args.data).encode()
|
||||||
|
response = urllib.request.urlopen(req, data=databytes, context=context)
|
||||||
else:
|
else:
|
||||||
response = urllib.request.urlopen(req, context=context)
|
response = urllib.request.urlopen(req, context=context)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user