miguelgrinberg / flask-sock

Modern WebSocket support for Flask.
MIT License
272 stars 24 forks source link

About geventwebsocket #46

Closed Mrshenxh closed 1 year ago

Mrshenxh commented 1 year ago

When I specify geventwebsocket to flask_sock, the websockt interface does not take effect and cannot be connected. I execute the following command: gunicorn -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker wsgi:app -c gunicorn.conf.py

Is there a conflict between the two, but if I don't specify geventwebsocket, my socketio interface will report another error。

Please help me!Thanks!

miguelgrinberg commented 1 year ago

gevent-websocket is not used or needed for this package to work. See the docs for how to run with gevent.

Mrshenxh commented 1 year ago
image image

I know that if I use gevent, I can just specify work-class as gevent. But this conflicts with flask_socketio, doesn't flask_socketio need to specify geventwebsocket?

A command like this: gunicorn -k gevent run:app -c gunicorn.conf.py If I don't specify geventwebsocket, it will report the following error

image

RuntimeError: You need to use the gevent-websocket server. See the Deployment section of the documentation for more information.

So, I'm a little confused, I'd like you to answer it again, thank you very much!!!

Mrshenxh commented 1 year ago

If I use this command: gunicorn -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker wsgi:app -c gunicorn.conf.py flask_sock will not work.

miguelgrinberg commented 1 year ago

I have not intended for people to use both Flask-SocketIO and Flask-Sock in the same application. Flask-Sock is a newer extension, it is not built to be compatible with the older Flask-SocketIO.

Mrshenxh commented 1 year ago

Because I'm using your flask_socketio library for this project, and it's awesome. However, we also need to support websocket in our project, so I want to combine the two into one project. It doesn't matter if it can't. Ok, I see. Then I'll close the question. Thank you for your answer. It helped me a lot.