Как исправить нераспознанные параметры подключения к WebSocket в приложении RN

#react-native #socket.io #laravel-echo

#react-native #socket.io #laravel-echo

Вопрос:

Я использую laravel-echo client в приложении RN.

      broadcaster: "socket.io",
     host: SOCKT_SERVER_URL,
     client: Socketio,
     auth: {
       headers: {
         Authorization: "Bearer "   SOCKET_SERVER_TOKEN
       }
     }
   });


   echo
     .channel("ticket-notification."   props.id)
     .listen("PrivateTicketCommentsNotification", event => {
       console.log("------->", event);
       //Handle event
     });
  

сервер laravel также работает для этого
но при подключении echo server
Я получаю эту проблему

Непризнанные соединение с WebSocket вариант(ы) agent , perMessageDeflate , pfx , key , passphrase , cert , ca , ciphers , rejectUnauthorized . Ты имел в виду, чтобы положить их под headers ? — node_modules / expo /build / environment /logging.js:25:23 в предупреждении — … еще 27 фреймов стека из внутренних компонентов фреймворка

Спасибо за ваше продвижение.

Комментарии:

1. в настоящее время это работает с сервером сокетов и клиентами

2. но все еще предупреждение. как я могу исправить это предупреждение.

3. Мы пытаемся сделать то же самое. Вы уже нашли что-нибудь?

4. все еще нет. Я попробовал использовать обычный клиент SocketIO. но….

Ответ №1:

 let echo = new Echo({
      broadcaster: "socket.io",
      host: SOCKT_SERVER_URL,
      client: socketIO,
      auth: {
        headers: {
          Authorization: "Bearer "   SOCKET_SERVER_TOKEN
        }
      },
      timeout: 10000,
      jsonp: false,
      transports: ["websocket"],
      autoConnect: false,
      agent: "-",
      pfx: "-",
      key: "Bearer "   SOCKET_SERVER_TOKEN,
      cert: "-",
      ca: "-",
      ciphers: "-",
      rejectUnauthorized: "-",
      perMessageDeflate: "-"
    });
  

Я получил решение для этой проблемы

Ответ №2:

Если вы используете nodejs на своем сервере, просто добавьте этот ключ в свои параметры:

 var socket = io(ENDPOINT, {forceNode:true})