Sockets 如何使用带颤振腹板的插座
我正在尝试使用Sockets 如何使用带颤振腹板的插座,sockets,flutter,flutter-web,Sockets,Flutter,Flutter Web,我正在尝试使用socketio在用Python编写的套接字服务器与使用FlatterWeb制作的客户端之间建立连接 我测试了各种各样的套接字包,比如和,但没有任何效果。我在Android上尝试了相同的代码片段,但它们也不起作用 我一直在搜索,我找到了这个代码片段。它使用dart.io包中的Socket类 Socket socket = await Socket.connect('192.168.2.190', 7003); print('connected'); // lis
socketio
在用Python编写的套接字服务器与使用FlatterWeb制作的客户端之间建立连接
我测试了各种各样的套接字包,比如和,但没有任何效果。我在Android上尝试了相同的代码片段,但它们也不起作用
我一直在搜索,我找到了这个代码片段。它使用dart.io
包中的Socket
类
Socket socket = await Socket.connect('192.168.2.190', 7003);
print('connected');
// listen to the received data event stream
socket.listen((List<int> event) {
print(utf8.decode(event));
});
// send hello
socket.add(utf8.encode('hello'));
// wait 5 seconds
await Future.delayed(Duration(seconds: 5));
// .. and close the socket
socket.close();
Socket-Socket=wait-Socket.connect('192.168.2.190',7003);
打印(“连接”);
//侦听接收到的数据事件流
socket.listen((列表事件){
打印(utf8.解码(事件));
});
//打招呼
socket.add(utf8.encode('hello'));
//等5秒钟
等待未来。延迟(持续时间(秒:5));
// .. 然后合上插座
socket.close();
这个连接到Python服务器并从Android发送数据,但当我从Web测试它时,我没有连接
是否有一些额外的东西,我需要添加它在网络上工作
或者在最坏的情况下,是否有其他方法来完成我想做的事情,我的目标是在网站上显示视频提要。视频实际上是从Python中获取的一组图像,有一些机器学习将在它们上执行,我想通过套接字发送它们,每个图像一收到就显示出来,所以看起来像一个视频提要。(使用React完成了类似的操作)
dart.io
包与Flatter web不兼容。我想,正如普金所说,websockets是一个不错的选择。您可以使用文档中的包中的HtmlWebSocketChannel
。我已经使用过这个软件包,可以确认它在颤振网络中运行良好
在您的情况下,应该使用以下内容
var channel = HtmlWebSocketChannel.connect("ws://192.168.2.190:7003");
但请注意,这与常规颤振应用程序不可互操作。如果您的目标是android和Flatter web,那么您应该根据构建渠道的目标有条件地处理此渠道创建,并在HtmlWebSocketChannel
或IOWebSocketChannel
之间做出决定以创建连接。如果您感兴趣,可以使用本文*中建议的基于条件存根的实现
*注意:这是我的帖子。:) 为什么不呢?不再需要使用任何条件。您可以跨平台使用WebSocketChannel类。