This is the dict data(headers) I am using for REST API get call.
column="name"
order="descending"
headers = {
'accept': 'application/json',
'orderby': '{"'+column+'":"'+order[:4]+'"}',
}
print(headers)
This gives me following output:
{'accept': 'application/json','orderby': '{"\'name\'":"desc"}'}
I am getting 400- BAD Request because of this error in header.
I am expecting the following output that is without '(slash)' in second key-value pair.
How to print this expected output?
{'accept': 'application/json','orderby': '{"name":"desc"}'}
Reading between the lines a bit, it looks like what you're trying to generate for the
orderby
value is a JSON-encoded version of the dictionary{column: order[:4]}
. Rather than try to build this yourself with string interpolation I strongly suggest using the built-injson
module, which will handle all the formatting for you (including how to quote the string values, escape them appropriately, etc):