работает на движке приложения, но не с gke: ошибка во время рукопожатия WebSocket: непредвиденный код ответа: 400 - PullRequest
0 голосов
/ 01 ноября 2019

main.58c4de976d0b122d6630.js: 1 Соединение WebSocket с 'ws: //35.226.60.64/socket.io/? EIO = 3 & transport = websocket' не удалось: ошибка во время рукопожатия WebSocket: непредвиденный код ответа: 400

В коде подключения сокета на стороне клиента мы указали следующее:

this.socketObject = io.connect(this.backendUrl+'/live',{
            transports:['websocket']
        });

получение этой ошибки websocket в gke. Файлы конфигурации приведены ниже

kind: Ingress
metadata:
  name: heartland-media
  annotations:
          kubernetes.io/ingress.class: nginx
          nginx.ingress.kubernetes.io/affinity: cookie
          nginx.ingress.kubernetes.io/affinity: balanced
          nginx.org/websocket-services: "heartland-media"
spec:
  rules:
  - http:
       paths:
       - path: /
         backend:
            serviceName: heartland-media
            servicePort: 80
kind: Deployment  #It will create pod with the following specifications
apiVersion: apps/v1
metadata:
  name: heartland-media
  namespace: default
  labels:
    run: heartland-media
spec:
  replicas: 2  #it will create an extra pod with same template
  selector:
    matchLabels:
      run: heartland-media 
  template:
    metadata:
      labels:
        run: heartland-media
    spec:
      containers:
        - name: heartland-media
          image: gcr.io/pe-training/heartland-final:v2
          livenessProbe:
              httpGet:
                 path: /
                 port: 80
              initialDelaySeconds: 15
              periodSeconds: 20
          ports:
                  - containerPort: 80
                    protocol: TCP



---

apiVersion: v1
kind: LimitRange
metadata:
  name: mem-limit-range
spec:
  limits:
  - default:
      memory: "1Gi"
    type: Container



apiVersion: v1
kind: Service
metadata:
  name: heartland-media
  labels:
    run: heartland-media 
spec:
  type: NodePort
  ports:
  - port: 80
    nodePort: 30877
    targetPort: 80
    protocol: TCP
    name: ports
  selector:
    run: heartland-media
  sessionAffinity: None

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...