【发布时间】:2015-01-06 23:10:19
【问题描述】:
我正在尝试为我的 Dart 服务器应用程序编写一些测试,并且我一直在使用 HttpClient 类(以及相关的 HttpClientRequest 和 HttpClientResponse 类向服务器发出测试请求(请注意,我正在使用这些类,因为我需要 dart:io 包来运行服务器,所以我也不能导入 dart:html)。到目前为止,这一切进展顺利,我已经能够编写测试来检查服务器是否正常返回带有正确 HTTP 状态代码的响应。我用来进行这些测试调用的代码的基础如下:
Future<HttpClientResponse> makeServerRequest(String method, Uri uri, [String jsonData]) async {
HttpClient client = new HttpClient();
HttpClientRequest request = await client.openUrl(method, uri);
request.write(jsonData);
return request.close();
}
现在我需要编写一个测试来确保响应的主体,而不仅仅是状态码,是正确的。问题是我似乎找不到任何可以让我实际访问 HttpClient* 类中的响应主体的东西。到目前为止,我能找到的最接近的是 HttpClientResponse.contentLength 属性,但这只能告诉我响应正文有多大,而不是实际内容。
如何从这些请求中检索响应正文?或者,如果您做不到,是否可以通过其他方式在服务器端应用程序上发出请求,以便读取响应?
【问题讨论】:
标签: dart