У меня возникла ситуация, которая в настоящее время препятствует моему прогрессу в работе.
Я пытаюсь использовать вместе Flask и Sockets, чтобы я мог проверить, подключен ли определенный пользователь раньше или нет. Я могу показать видео в веб-браузере.
Вот мой код ниже.
from flask import Flask, render_template, Response, jsonify, request
from flask_socketio import SocketIO
from camera import VideoCamera, SocketConnections
import socket
import pickle
import struct
import new_client as NC #this is a client module
app = Flask(__name__)
video_camera = None
global_frame = None
urlfor_container = ""
HOST = ''
PORT = 5000
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print('Socket created')
s.bind((HOST, PORT))
print('Socket bind complete')
s.listen(10)
print('Socket now listening')
c = SocketConnections('127.0.0.1',5000)
c.Establish_Connection()
conn, addr = s.accept()
print('connected workstation ', addr)
data = b'' ### CHANGED
payload_size = struct.calcsize("L") ### CHANGED
# check if the connection was accepted
app.run(host='',threaded=True)
Когда я запускаю этот код, кажется, все в порядке.
====== RESTART: C:\CENTRALIZED_SYSTEM_FILES\OpenCV Demozz\new_cam_serv.py ======
Socket created
Socket bind complete
Socket now listening
test message should print if code was accessed
connected
connected workstation ('127.0.0.1', 59283)
* Serving Flask app "new_cam_serv" (lazy loading)
* Environment: production
[31m WARNING: This is a development server. Do not use it in a production deployment.[0m
[2m Use a production WSGI server instead.[0m
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Однако, когда я пытался получить доступ к веб-странице с локального хоста (localhost: 5000 / 127.0.0.1: 5000), я получаю сообщение об ошибке «404 Страница не найдена». У меня уже есть папка шаблонов вместе с индексом. html в той же папке, где расположен основной модуль, но каждый раз, когда я запускаю этот код, я все равно получаю сообщение 404.
Кроме того, я пытался использовать разные варианты для IP-адреса, но безуспешно, все же 404.
Любая помощь от вас, ребята, будет принята с благодарностью. Спасибо.
РЕДАКТИРОВАТЬ: я пытался создать оператор if name == " main " внизу, а затем вставил этот фрагмент кода в предложение. Затем я заметил, что сервер flask успешно запущен, и я смог снова просмотреть страницу, но здесь есть проблема. после того, как я прервал выполнение, это единственный раз, когда мой код для соединения с сокетом был выполнен.
Итак, мой вопрос сейчас ... возможно ли использование сокета и Flask при в то же время?
Еще раз спасибо.