在Azure上部署后在django应用上连接到websocket时出现问题

时间:2020-06-17 10:05:57

标签: django azure docker websocket

在通过VS Code在Azure上部署django应用程序后,html页面运行良好,但是即使我在我的Azure门户应用程序上启用了websocket,我似乎也无法连接到websocket。

控制台日志:Firefox无法通过wss://myapp.azurewebsites.net:8080建立与服务器的连接

该应用程序正在docker上运行:

FROM python:3.7-buster

# Define environment variables
ENV ACCEPT_EULA=Y
ENV PYTHONUNBUFFERED=1

# Expose port
EXPOSE 8080/tcp

# Create app directory
WORKDIR /django_ui

# Copy all files to image
COPY . .

# Install recuired apt packages
RUN apt-get update && apt-get install -y --no-install-recommends gcc unixodbc unixodbc-dev build-essential curl

# Install microsoft sql driver for debian
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
   curl https://packages.microsoft.com/config/debian/10/prod.list > /etc/apt/sources.list.d/mssql-release.list && \
   apt-get update && \
   apt-get install -qq -y msodbcsql17 && \
   apt-get install -qq -y mssql-tools && \
   echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile && \
   echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc

# Install recuired pip packages
RUN pip install -r ./req/requirements.txt

# Remove requirements
RUN rm -rf ./req

# Run django websocket server 0 0 0 0
CMD ["python3", "manage.py", "runserver", "0.0.0.0:8080"] 

.js文件中的端点如下:

// Get endpoint
var loc = window.location;
var wsStart = 'wss://';
var port=":8080"
var endpoint = wsStart + loc.host + port;

// Create new client socket
var socket = new WebSocket(endpoint); 

我不得不提到我的工作在本地服务器上完全正常。

有什么想法吗?

0 个答案:

没有答案