Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter WebSocketException:连接到';http://localhost:1234/ws#' 未升级到websocket。无法连接到颤振/飞镖虚拟机 描述_Flutter_Dart_Flutter Test_Flutter Web - Fatal编程技术网

Flutter WebSocketException:连接到';http://localhost:1234/ws#' 未升级到websocket。无法连接到颤振/飞镖虚拟机 描述

Flutter WebSocketException:连接到';http://localhost:1234/ws#' 未升级到websocket。无法连接到颤振/飞镖虚拟机 描述,flutter,dart,flutter-test,flutter-web,Flutter,Dart,Flutter Test,Flutter Web,我正在尝试运行一个flatterweb服务器,并使用VM\u服务库以编程方式连接到Dart虚拟机。web服务器已成功启动,但当我尝试侦听套接字时,收到以下错误: 未处理的异常:WebSocketException:到“”的连接未升级到websocket 我的代码基于下面链接中的vm\u服务库示例,开发人员在该示例中启动Dart vm并连接到它 复制步骤 错误的来源如下所示: serviceClient = await vmServiceConnect(host, port, log: new

我正在尝试运行一个flatterweb服务器,并使用
VM\u服务
库以编程方式连接到Dart虚拟机。web服务器已成功启动,但当我尝试侦听套接字时,收到以下错误:

未处理的异常:WebSocketException:到“”的连接未升级到websocket

我的代码基于下面链接中的
vm\u服务
库示例,开发人员在该示例中启动Dart vm并连接到它


复制步骤 错误的来源如下所示:

serviceClient = await vmServiceConnect(host, port, log: new StdoutLog());
完整代码如下所示:


library service_tester;
import 'dart:async';
import 'dart:collection';
import 'dart:convert';
import 'dart:io';
import 'package:path/path.dart' as path;
import 'package:pedantic/pedantic.dart';
import 'package:vm_service/vm_service.dart';
import 'package:vm_service/vm_service_io.dart';
// import 'package:test/test.dart';

final String host = 'localhost';
final int port = 1234;
VmService serviceClient;

void main() async {
  Directory current = Directory.current;
  String sdk = path.dirname(path.dirname(Platform.resolvedExecutable));
  String fsdk = path.dirname(path.dirname(Platform.resolvedExecutable));
  // var flutterSDK = new Directory('C:/flutter/bin');  //FOR WINDOWS
  var flutterSDK = new Directory('/opt/flutter/bin');   //FOR LINUX

  print('Using sdk at ${sdk}');
  print('Directory ${current.path}');
  print('Directory ${flutterSDK.path}/flutter');

  var commands = ["run", "--target=lib/main.dart", "-d", "web", '--web-port=${port}' ];
  print('Running command: flutter ${commands.join(" ")}');
  Process process = await Process.start('flutter', commands , runInShell: true);

  print('dart process started: ${process.pid}');
  process.exitCode.then((code) => print('vm exited: ${code}'));
  process.stdout.transform(utf8.decoder).listen((v)=>print('STDOUT: $v'));
  process.stderr.transform(utf8.decoder).listen((v)=>print('STDERR: $v'));

  await new Future.delayed(new Duration(milliseconds: 1 * 60 * 1000));
  print('\n\nConnecting to ${host}:${port}\n\n');
  serviceClient = await vmServiceConnect(host, port, log: new StdoutLog());
  print('\n\nSocket connected to ${host}:${port}\n\n');
  // serviceClient.onSend.listen((str) => print('--> ${str}'));

  // var checkResponseJsonCompatibility = true;
  // serviceClient.onReceive.listen((str) =>print('<-- ${str}'));
  // serviceClient.onIsolateEvent.listen((e) => print('onIsolateEvent: ${e}'));
  // serviceClient.onDebugEvent.listen((e) => print('onDebugEvent: ${e}'));
  // serviceClient.onGCEvent.listen((e) => print('onGCEvent: ${e}'));
  // serviceClient.onStdoutEvent.listen((e) => print('onStdoutEvent: ${e}'));
  // serviceClient.onStderrEvent.listen((e) => print('onStderrEvent: ${e}'));

  // unawaited(serviceClient.streamListen(EventStreams.kIsolate));
  // unawaited(serviceClient.streamListen(EventStreams.kDebug));
  // unawaited(serviceClient.streamListen(EventStreams.kStdout));

  VM vm = await serviceClient.getVM();
  print('hostCPU=${vm.hostCPU}');
  print(await serviceClient.getVersion());

}

class StdoutLog extends Log {
  void warning(String message) => print(message);

  void severe(String message) => print(message);
}
[✓] Flutter (Channel master, v1.12.5-pre.27, on Linux, locale en_US.UTF-8)
    • Flutter version 1.12.5-pre.27 at /opt/flutter
    • Framework revision 29ab6b549a (8 hours ago), 2019-11-19 11:29:35 -0800
    • Engine revision ecb32952ff
    • Dart version 2.7.0

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /opt/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = /opt/sdk
    • Java binary at: /usr/local/openjdk-8/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_232-b09)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/setup/#android-setup for detailed instructions).

[✓] Connected device (1 available)
    • Web Server • web-server • web-javascript • Flutter Tools

! Doctor found issues in 2 categories.

错误记录
在项目中运行“flatter pub get”。。。2.8s
在/usr/lib/dart处使用sdk
目录/项目
目录/opt/flatter/bin/flatter
运行命令:flatterrun--target=lib/main.dart-d web--web端口=1234
dart过程已开始:56
下载网页SDK。。。
标准输出:3.5s
标准:
标准输出:在调试模式下在Web服务器上启动lib/main.dart。。。
正在为web构建应用程序。。。
标准输出:31.9秒
lib/main.dart正在http://localhost:1234/
警告:Flitter对web开发的支持还不稳定,而且还不稳定
已在生产环境中进行了全面测试。
有关更多信息,请参阅https://flutter.dev/web
标准:
[✓] Flutter (Channel master, v1.12.5-pre.27, on Linux, locale en_US.UTF-8)
    • Flutter version 1.12.5-pre.27 at /opt/flutter
    • Framework revision 29ab6b549a (8 hours ago), 2019-11-19 11:29:35 -0800
    • Engine revision ecb32952ff
    • Dart version 2.7.0

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /opt/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = /opt/sdk
    • Java binary at: /usr/local/openjdk-8/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_232-b09)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/setup/#android-setup for detailed instructions).

[✓] Connected device (1 available)
    • Web Server • web-server • web-javascript • Flutter Tools

! Doctor found issues in 2 categories.