繁体   English   中英

无法使用Dart客户端连接Python Websocket服务器

[英]Unable to connect Python Websocket server using Dart Client

问题:

当我尝试使用 client.py 连接到 server.py 时,它正在工作并且我得到这样的响应在此处输入图像描述

但是,当我尝试使用 Dart 连接到 Python 服务器时,出现以下错误: 在此处输入图像描述

我的 server.py 文件内容:

import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('192.168.0.102', 59000))
server.listen()
client, address = server.accept()
client.send('You are connected'.encode('utf-8'))

我的client.py文件内容

import socket

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('192.168.0.102', 59000))
message = client.recv(1024).decode('utf-8')
print(message)

我的 dart 客户

import 'package:web_socket_channel/web_socket_channel.dart';

void main(List<String> arguments) {
  final channel = WebSocketChannel.connect(
    Uri.parse('ws://192.168.0.102:59000'),
  );
  channel.stream.listen(
    (data) {
      print(data);
    },
    onError: (error) {
      print('Error : $error');
    },
  );
}
import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('192.168.0.102', 59000))
server.listen()
client, address = server.accept()
client.send('You are connected'.encode('utf-8'))

不是WebSocket 服务器的实现,因为它不符合RFC 6455 如果您想与 WebSocket 客户端一起使用,要么更改您的代码,使其符合RFC 6455所有规范部分,要么使用外部 package 提供的现成 WebSocket 服务器实现,例如websocket-server ,但在使用之前请理解其文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM