Заранее извиняюсь, если мой вопрос кажется непонятным. Это ошибка Django, когда я пытаюсь обслужить несколько URL-адресов Django медиа (видео) на моей домашней странице React. Это stacktrace:
Exception happened during processing of request from ('127.0.0.1', 5511)
File "D:\Django\myproject\app\env\lib\site-packages\django\core\servers\basehttp.py", line 174, in handle
self.handle_one_request()
Traceback (most recent call last):
File "C:\Users\Anshul\AppData\Local\Programs\Python\Python38\lib\socketserver.py", line 650, in process_request_thread
self.finish_request(request, client_address)
File "D:\Django\myproject\app\env\lib\site-packages\django\core\servers\basehttp.py", line 182, in handle_one_request
self.raw_requestline = self.rfile.readline(65537)
File "C:\Users\Anshul\AppData\Local\Programs\Python\Python38\lib\socket.py", line 669, in readinto
return self._sock.recv_into(b)
File "C:\Users\Anshul\AppData\Local\Programs\Python\Python38\lib\socketserver.py", line 360, in finish_request
self.RequestHandlerClass(request, client_address, self)
ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine
----------------------------------------
File "C:\Users\Anshul\AppData\Local\Programs\Python\Python38\lib\socketserver.py", line 720, in __init__
self.handle()
File "D:\Django\myproject\app\env\lib\site-packages\django\core\servers\basehttp.py", line 174, in handle
self.handle_one_request()
File "D:\Django\myproject\app\env\lib\site-packages\django\core\servers\basehttp.py", line 182, in handle_one_request
self.raw_requestline = self.rfile.readline(65537)
File "C:\Users\Anshul\AppData\Local\Programs\Python\Python38\lib\socket.py", line 669, in readinto
return self._sock.recv_into(b)
ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine
Это фрагмент кода React:
<video
preload="metadata"
id={this.props.id}
muted
ref={this.videoRef}
onClick={this.play.bind(this,1,this.props.id)}
onTimeUpdate={this.updateTime.bind(this,this.props.id)}
onCanPlay={this.getReady.bind(this,this.props.id)}>
<source src={this.props.source} type="video/mp4"/>
</video>
где источник видео ссылается на django URL-адрес мультимедиа, предоставленный сериализатором drf. Например,
this.props.source = 'http://localhost:8000/media/buck_bunny.mp4'
Домашняя страница содержит несколько видеороликов. URL-адреса мультимедиа выбираются через вызовы API. страница фида контента. Последующие вызовы API для получения URL-адресов мультимедиа выполняются, когда пользователь прокручивает домашнюю страницу вниз на определенную сумму. Вот где возникает проблема. Если пользователь прокручивает страницу очень быстро, вызовы API также быстро выполняются, что приводит к этой ошибке.