我正在使用 Hapi 构建一个 API。我需要 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 向这条路由发出请求吗?没有这方面的例子,所以我不明白我怎么能这样做。如果不可能,那么我想知道我的选择是什么,因为我正在使用的框架(Flutter)中甚至不存在 Socket.io。