簡體   English   中英

如果python-socketio是我的項目的一部分,如何注冊wsgi

[英]How to register the wsgi if the python-socketio is a part of my project

我正在閱讀python-socketio示例

在其wsgi.py

import os

from django.core.wsgi import get_wsgi_application
from socketio import Middleware

from socketio_app.views import sio

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_example.settings")

django_app = get_wsgi_application()
application = Middleware(sio, django_app)

views.py

async_mode = None

import os

from django.http import HttpResponse
import socketio

basedir = os.path.dirname(os.path.realpath(__file__))
sio = socketio.Server(async_mode=async_mode)
thread = None

我想知道,GitHub示例顯示了使用此方法注冊wsgi應用程序:

django_app = get_wsgi_application()
application = Middleware(sio, django_app)

但是在我的項目中, python-socketio是其中的一部分,如何在這種情況下注冊wsgi

我的意思是我想使python-socketio應用程序成為項目的一部分,成為項目中的app 但是我不知道如何配置wsgi


編輯01

我的項目wsgi.py當前代碼如下:

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Qiyun02.settings")

application = get_wsgi_application()

最后,我弄清楚了配置它的方法:

wsgi.py ,像下面這樣配置eventlet ,我解決了這個問題。

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Qyun.settings")

from socketio import Middleware
from website_chat.views import sio
django_app = get_wsgi_application()
application = Middleware(sio, django_app)

import eventlet
import eventlet.wsgi
eventlet.wsgi.server(eventlet.listen(('', 8000)), application)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM