NodeJs http.get for Dart

时间:2012-11-05 20:38:57

标签: node.js dart

在Node.js中,我可以这样做:

var http = require('http')

var url = 'mylinkedsite.com'
http.get({ host: url }, function(){...})

在Dart我也在尝试:

import 'dart:io';
import 'dart:uri';

var url = 'mylinkedsite.com';        
var client = new HttpClient();
var uri = new Uri.fromString(url);
var connection = client.getUrl(uri);
connection.onResponse = (res){...};

但是如果没有明确添加url.scheme和url.path,我将无法获得相同的结果。两者都是最终的。什么是实现相同结果的最简单方法。

1 个答案:

答案 0 :(得分:1)

dart:io中的HttpClient支持字符串作为主机名:

  var conn = httpClient.get("http://mylinkedsite.com", 80, "/");
  conn.onResponse = (HttpClientResponse response) {
    if(response.statusCode != 200) {
       // unexpected return code
    } else {
       // success, parse response
    }
  };
  conn.onError = (e) => completer.completeException(e);

只有其他方法是使用http helper方法来隐藏URI调用,而不是像接口这样的节点。