我看过一些关于如何在 Linux 机器上的 Dart VM 上运行网络服务器的教程。但是在 Windows 服务器上执行相同操作的基本步骤是什么?如果它正在运行,您是否需要关闭 ISS?我假设我需要通过一些环境变量来连接 VM,但我还没有看到教程。
问问题
712 次
1 回答
2
这是与 IIS 之类的不同的心理概念。
本质上,您使用 dart 二进制文件从命令行运行 .dart 脚本dart.exe
例如,下面的脚本代表一个监听 8080 端口的“dart 服务器”
import 'dart:io';
void main() {
var httpServer = new HttpServer();
httpServer.defaultRequestHandler = (req, HttpResponse res) {
var result = "${req.method}: ${req.path}";
print(result); // log to console
res.outputStream.writeString("You requested $result"); // return result to browser
res.outputStream.close();
};
httpServer.listen("127.0.0.1", 8080);
}
将上面的文本另存为myServer.dart
并从命令行运行dart.exe myServer.dart
.
然后导航到http://127.0.0.1:8080/foo/bar
,您将在浏览器中获得以下输出:
You requested GET: /foo/bar
从那里,您可以编写代码为特定方法/路径等添加更多处理程序...,从文件系统加载文件以发送到浏览器,访问数据源,返回数据,真正可以用 Dart 代码编写的任何东西并发送到浏览器。
(澄清:如果 IIS 已经在同一个端口上提供服务,您只需要关闭它,例如,端口 8080)。
于 2013-02-12T15:01:27.557 回答