502 bad gateway
不要用 python3 manage.py runserver 启动服务,
而要用:
daphne -b 0.0.0.0 -p <端口> <工程名>.asgi:application
此外,在 setting.py 中,修改:
import os
SECRET_KEY = os.environ.get('DJANGO_SECRET_KEY', 'cg#p$g+j9tax!#a3cup@1$8obt2_+&k3q+pmu)5%asj6yjpkag')
DEBUG = False
ALLOWED_HOSTS = ['<域名>']
CSRF fail
在 setting.py 中,修改:
INSTALLED_APPS = [
...
'corsheaders',
...
]
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
...
]
CSRF_TRUSTED_ORIGINS = ['<域名>']
CSRF_COOKIE_DOMAIN = '<域名>'
其中,域名有无 https:// 均可
此外,在 <应用名>/views.py 中,修改:
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def login(request):
...
Django: no such table: django_session
运行:
python manage.py migrate
websocket fail
在 script 中,声明 WebSocket 时,注意 https 与 wss 对应,http 与 ws 对应:
const webSocket = new WebSocket(
'wss://'
+ ...
);