Dart,一个超级简单的http服务器

时间:2013-11-28 22:52:18

标签: webserver dart

我正在尝试将控制台应用程序作为Web服务器启动,因此如果我在浏览器中浏览到locahost:3000,我应该会看到HELLO WORLD的空白页面!写在上面但是我得到的是控制台面板中的重复消息“AcceptEx failed:10022”:

import 'dart:io';

void main() {

  HttpServer.bind(InternetAddress.ANY_IP_V4, 3000).then((server){
    server.listen((HttpRequest request) {
      request.response.write('''
        <html>
          <head>
          </head>
          <body>
            <div>
              HELLO WORLD!
            </div>
          </body>
        </html>
      ''');
    });
  });

}

更新

我将它设置为ANY_IP_V6,这是错误的,我的系统没有这个,将它设置为ANY_IP_V4确实似乎有助于解决这个问题,但现在它最终到达了一个抱怨空引用异常的点{{ 1}来自Object类中的noSuchMethod。

1 个答案:

答案 0 :(得分:4)

尝试使用 localhost 替换InternetAddress,并确保关闭响应。像这样:

HttpServer.bind('127.0.0.1', 3000).then((server){
    server.listen((HttpRequest request) {
      request.response.write('''
        <html>
          <head>
          </head>
          <body>
            <div>
              HELLO WORLD!
            </div>
          </body>
        </html>
      ''');
      request.response.close();
    });
  });