在Web服务器中运行dart

gop*_*410 8 dart dartium

如何在服务器中运行dart?在localhost或任何Web服务器中说?目前谷歌提供了一个dart编辑器,它在dartium浏览器中执行代码.即使我在服务器上运行它也会被其他人在dartium以外的浏览器中查看页面时看到吗?

Lev*_*son 11

您实际上可以将Dart作为Web服务器运行:

import 'dart:io';

main() {
  HttpServer.bind('127.0.0.1', 8080).then((server) {
    server.listen((HttpRequest request) {
      request.response.write('Hello, world');
      request.response.close();
    });
  });
}
Run Code Online (Sandbox Code Playgroud)

这将使用端口8080在本地计算机上启动Web服务器.它只返回"Hello,world".

从那里你需要做的就是定义你的路线,行动等.


Chr*_*ett 9

使用Dart编辑器创建新的"Web应用程序"时,它会创建.html文件和.dart文件.html文件使用标记链接到.dart文件,例如:

MyApp.html //contains <script type="application/dart" src="MyApp.dart"></script>
MyApp.dart //contains dart app code.
Run Code Online (Sandbox Code Playgroud)

编辑器还可以从.dart文件生成javascript文件,例如:

MyApp.dart.js //contains dart app code converted to JS
Run Code Online (Sandbox Code Playgroud)

就Web服务器而言,这些只是提供给浏览器的静态文件.

html文件包含指向特殊JavaScript脚本的链接,该脚本可以识别所使用的浏览器是否具有对Dart(即Dartium)的本机支持.

  • 如果是,则使用MyApp.html和MyApp.dart文件对.

  • 如果浏览器本身不支持Dart,则特殊脚本会动态更改脚本元素以指向MyApp.dart.js文件,以便浏览器接收应用程序的javascript版本.

这意味着您可以将三个文件(.html,.dart,.js)复制到任何Web服务器(localhost或其他),然后只需浏览到.html文件即可.

为了完整起见,可以在此处查看"特殊脚本":http: //dart.googlecode.com/svn/branches/bleeding_edge/dart/client/dart.js