Django, вызывая событие после закрытия StreamingHttpResponsePython

Программы на Python
Ответить
Anonymous
 Django, вызывая событие после закрытия StreamingHttpResponse

Сообщение Anonymous »

Вот мой код:

Код: Выделить всё

    def stream(self,request: HttpRequest,user,camera_index):
try:
url = self.config["cameras"][int(camera_index)]["url"]
except IndexError or TypeError:
return HttpResponseNotFound()

response = StreamingHttpResponse(self.__stream(url),content_type="multipart/x-mixed-replace;boundary=frame")
return response

def __stream(self,url):
video_cap = cv2.VideoCapture(url)
while True:
_, frame = cv2.imencode('.jpg', video_cap.read()[1],[int(cv2.IMWRITE_JPEG_QUALITY), 100])
yield(b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame.tobytes() + b'\r\n\r\n')
Во-первых, я хочу знать, завершается ли функция __stream, если пользователь закрывает страницу. Я провел несколько тестов по этому поводу, но я не уверен. Во-вторых, могу ли я добавить обратный вызов к функции __stream, которая будет вызываться при закрытии потоковой передачи?

Подробнее здесь: https://stackoverflow.com/questions/768 ... -is-closed
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»