簡體   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