Не удалось загрузить ресурс: net::ERR_INCOMPLETE_CHUNKED_ENCODING в Django, развернутом на Heroku
Как исправить эту ошибку? Я установил серверное событие, которое отправляет данные на фронтенд только при наличии новых данных в базе данных. но каждую минуту оно продолжает отправлять данные, даже если в базе данных нет новых данных. Во время разработки этой проблемы нет, но при развертывании на Heroku появляется эта ошибка.
views.py
def event_stream():
initial_data = ""
while True:
deposit_records = Deposit.objects.filter().values('date').order_by(
'-id').annotate(bottles=Sum('number_of_bottles'), credits=Sum('credits_earned'), not_bottle=Sum('not_bottle'))
bottle = Deposit.objects.aggregate(Sum('number_of_bottles'))[
'number_of_bottles__sum']
# deposit_records = Deposit.objects.order_by(
# "-id").values("number_of_bottles", "credits_earned", "date")
data = json.dumps(list(deposit_records) +
list(str(bottle)), cls=DjangoJSONEncoder)
# print(data)
if not initial_data == data:
yield "\ndata: {}\n\n".format(data)
initial_data = data
time.sleep(1)
def stream(request):
response = StreamingHttpResponse(event_stream())
response['Content-Type'] = 'text/event-stream'
return response
JS
var eventSource = new EventSource("{% url 'stream' %}")
eventSource.onopen = function(){
console.log('yay its open');
}
eventSource.onmessage = function(e){
if(!e){
eventSource.end()
}
else{
console.log(e)
var final_data = JSON.parse(e.data)
}
eventSource.onerror = function(e) {
console.log(`error ${e}`);
}
