Ответы возвращаются в виде строки, а не в виде json - Python
Я пытаюсь отправить обратно (get requests) json, но вместо этого отправляется json как строка
"{"series": [{"name": "Count of Signups", "type": "column", "data": [4, 29, 10]}, {"name": "Average of signups over last 3 Months", "type": "line", "data": [NaN, NaN, 14.0]}], "labels": ["2020-06", "2020-07", "2020-08"]}"
Результат disire тот же, но в формате json без кавычек (не как строка)
{
"series": [{
'name': "Count of Signups",
'type': "column",
'data': [4, 29, 10],
},
{
'name': "Average of signups over last 3 Months",
'type': "line",
'data': [NaN, NaN, 14.0],
}],
"labels": ["2020-06", "2020-07", "2020-08"]
}
вот мой код, мое представление в django:
def Apiname(request):
start_date = request.GET.get('start')
end_date = request.GET.get('end')
res = {
"series": [{
'name': "Count of Signups",
'type': "column",
'data': [],
},
{
'name': "Average of signups over last 3 Months",
'type': "line",
'data': [],
}],
"labels": []
}
df = pd.read_csv("mycsvfile.csv")
mask = (df['MonthYear'] >= start_date) & (df['MonthYear'] <= end_date)
df = df.loc[mask]
for i, row in df.iterrows():
res['series'][0]['data'].append(row['Count_of_signups'])
res['series'][1]['data'].append(row['signups_3mth_moving_average'])
res['labels'].append(row['MonthYear'])
return HttpResponse(json.dumps(res), content_type="application/json")
Я пытался с помощью to_dict разобрать его в json, но получил те же результаты, самое неприятное, что у меня есть другие API с такой же структурой, и они возвращают json, не знаю, почему это происходит
Я исправил, это были значения NaN в дикте, теперь все работает нормально, если я заменю их на "0"