【发布时间】:2016-02-21 07:26:44
【问题描述】:
有没有什么方法可以在 Dart 上创建 http 服务器,并将其编译为 Node JS 的 JS?
如果我尝试使用默认服务器
HttpServer.bind(new InternetAddress("127.0.0.1"), 8081);
然后通过 dart2js 编译这段代码我会在节点启动时出错
不支持的操作:InternetAddress
【问题讨论】:
有没有什么方法可以在 Dart 上创建 http 服务器,并将其编译为 Node JS 的 JS?
如果我尝试使用默认服务器
HttpServer.bind(new InternetAddress("127.0.0.1"), 8081);
然后通过 dart2js 编译这段代码我会在节点启动时出错
不支持的操作:InternetAddress
【问题讨论】:
当您想构建到 JS 时,您不能使用 dart:io,因为 dart:io 在构建输出运行的地方不可用。
dart:io 转发给操作系统调用,dart2js 没有任何能力将此类调用转换为 JS(实际上是 Node.js,因为 JS 本身根本不提供任何方式)
您可能需要 https://github.com/luizmineo/node-webkit.dart 之类的东西来使用转换为等效 Node.js 调用的自定义实现。
【讨论】:
dart:io 的 JS 实现,它不存在 AFAIK,但可以构建一个转发到替代实现的包装器。也许 node-webkit.dart 会做类似的事情。