我正在尝试使用网络套接字将一些数据发送到 Flask 应用程序。从来没有做过这样的事情,所以我可能做错了什么,但到目前为止我还不能接受一个连接。
目前我有 2 个 python 文件,server.py
和client.py
.
server.py
启动烧瓶服务器和网络套接字,然后client.py
应该能够连接到它,发送一条消息,该消息打印到服务器控制台,然后服务器应该将该消息回显到客户端将接收到的位置并打印到客户端控制台。
但是现在Handshake status 400 BAD REQUEST
当客户端尝试连接时出现错误。
这是我正在使用的代码:
server.py :
from flask import Flask, render_template
from flask_socketio import SocketIO
app = Flask(__name__)
app.config['SECRET_KEY'] = 'hi'
socketio = SocketIO(app)
@app.route('/')
def sessions():
return "Hello World"
@socketio.on('message')
def handle_my_custom_event(mes):
print('received my event: ' + str(mes))
socketio.emit('my response', mes)
if __name__ == '__main__':
socketio.run(app, debug=True)
client.py :
import websocket
websocket.enableTrace(True)
ws = websocket.create_connection("ws://localhost:5000")
print("Sending 'Hello, World'...")
ws.send("Hello, World")
print("Sent")
print("Receiving...")
result = ws.recv()
print("Received '%s'" % result)
ws.close()
我认为该server.py
文件有问题,但是,我一直在流动Flask-SocketIO 文档,它与他们的入门示例几乎相同。但是话又说回来,我对此也知之甚少,所以我不知道问题出在哪里。
感谢您提供任何帮助!