Websockets и путаница Hapi.js - PullRequest
       36

Websockets и путаница Hapi.js

0 голосов
/ 14 октября 2018

Я строю API, используя Hapi.Мне нужна функциональность WebSocket, и кажется, что Nes является наиболее популярным для использования с Hapi.Это нормально, поскольку Nes упрощает работу, например, тестовый маршрут может выглядеть так ...

// Register Nes.
await server.register(Nes);
...
...
// WebSocket route.
server.route({
  method: 'GET',
  path: '/h',
  config: {
    id: 'hello',
    handler: (request, h) => {
      return 'world!';
    }
  }
});

Это замечательно, однако документация показывает, что единственный способ сделать запросэтот маршрут с использованием WebSockets также заключается в использовании Nes на клиенте ...

const Nes = require('nes');

var client = new Nes.Client('ws://localhost');

const start = async () => {

  await client.connect();
  const payload = await client.request('hello');  // Can also request '/h'
  // payload -> 'world!'
};

start();

Моя проблема в том, что клиент не использует JavaScript.Библиотека Nes не существует вообще.В таком случае, могу ли я по-прежнему использовать WebSockets для запроса этого маршрута?Там нет примеров этого, поэтому я не понимаю, как я мог это сделать.Если это невозможно, я хотел бы знать, какие у меня есть варианты, поскольку даже Socket.io не существует в используемой мной платформе (Flutter).

1 Ответ

0 голосов
/ 30 октября 2018

Поскольку WebSockets - это просто протокол , любая клиентская библиотека WebSocket для флаттера должна работать.WebSockets не привязаны напрямую к определенному языку.Таким образом, вы должны найти и реализовать библиотеку WebSocket для вашей платформы.Я просмотрел их веб-сайт и нашел несколько потенциальных кандидатов, хотя я уверен, что это не исчерпывающий список.

Вот некоторые потенциальные пакеты веб-сокетов от Flutter:

Информацию об интеграции пакета можно найти здесь по этой ссылке .

...