I Am Sending Json Data To Api But Getting Unicode Json Data Whe Api Call From Android Device
My data -: {'op':'merge','merge_bcards_ids':{'data':[216,217]},'target_bacard_id':226} In view file I am getting json list data request.data['merge_bcards_ids'] :- [258, 259] <
Solution 1:
request params are strings.
You may dump you dictionary (json.dumps
) and sent it as a request param.
On other side you must to use json.loads
to convert you data back to dict.
Also you can dump only array "data":json.dumps([216,217])
and then load it as array: json.loads(request.data["merge_bcards_ids"])
.
It may cause some encoding/decoding errors (it depends on version of python you are using)
Solution 2:
I don't know why the data is coming as unicode, I also passed through this same situation once and i solved by converting from unicode data to normal; This code may help you to do that;
if isinstance(request.data['merge_bcards_ids'], unicode):
merge_bcards_ids = list(unicodedata.normalize('NFKD', request.data['merge_bcards_ids']).encode('ascii','ignore'))
else:
merge_bcards_ids = request.data['merge_bcards_ids']
OR
merge_bcards_ids = [unicodedata.normalize('NFKD', ids).encode('ascii','ignore') for ids in list(unicodedata.normalize('NFKD', request.data['merge_bcards_ids']).encode('ascii','ignore'))).encode('ascii','ignore')]
Solution 3:
Make sure you are using the "application/json" content type when submitting your request.
Post a Comment for "I Am Sending Json Data To Api But Getting Unicode Json Data Whe Api Call From Android Device"