dart:io
库中HttpResponse
类的用法介绍如下。
HTTP 响应,它将标头和数据从服务器返回到客户端以响应 HTTP 请求。
每个HttpRequest 对象都通过response
属性提供对关联的HttpResponse 对象的访问。服务器通过写入HttpResponse 对象将其响应发送给客户端。
编写响应
此类实现 IOSink 。设置好标头后,可以使用来自 IOSink 的方法,例如 writeln()
来编写 HTTP 响应的正文。使用close()
方法关闭响应并将其发送给客户端。
server.listen((HttpRequest request) {
request.response.write('Hello, world!');
request.response.close();
});
当第一次使用其中一个 IOSink 方法时,会发送请求标头。在发送后调用任何更改标头的方法都会引发异常。
设置标题
HttpResponse 对象具有许多用于设置响应的 HTTP 标头的属性。通过 IOSink 写入字符串数据时,使用的编码由"Content-Type" 标头的"charset" 参数确定。
HttpResponse response = ...
response.headers.contentType
= ContentType("application", "json", charset: "utf-8");
response.write(...); // Strings written will be UTF-8 encoded.
如果未提供字符集,则将使用默认的 ISO-8859-1 (Latin 1)。
HttpResponse response = ...
response.headers.add(HttpHeaders.contentTypeHeader, "text/plain");
response.write(...); // Strings written will be ISO-8859-1 encoded.
如果在设置不受支持的 content-type 时使用 write()
方法,则会引发异常。
- 实现的类型
相关用法
- Dart HttpRequest.postFormData用法及代码示例
- Dart HttpRequest.request用法及代码示例
- Dart HttpRequest用法及代码示例
- Dart HttpRequest.getString用法及代码示例
- Dart HttpRequest构造函数用法及代码示例
- Dart HttpOverrides用法及代码示例
- Dart HttpClient.findProxy用法及代码示例
- Dart HttpClientRequest用法及代码示例
- Dart HttpServer.defaultResponseHeaders用法及代码示例
- Dart HttpClient用法及代码示例
- Dart HttpClient.findProxyFromEnvironment用法及代码示例
- Dart HttpClientResponse用法及代码示例
- Dart HttpDate.parse用法及代码示例
- Dart HttpClient.connectionFactory用法及代码示例
- Dart HttpClientRequest.followRedirects用法及代码示例
- Dart HttpHeaders用法及代码示例
- Dart HttpClient.keyLog用法及代码示例
- Dart HttpServer用法及代码示例
- Dart HttpClientRequest.abort用法及代码示例
- Dart HtmlCollection.last用法及代码示例
- Dart HtmlEscape用法及代码示例
- Dart HtmlEscapeMode用法及代码示例
- Dart HtmlCollection.elementAt用法及代码示例
- Dart HtmlCollection.length用法及代码示例
- Dart HtmlDocument.registerElement2用法及代码示例
注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 HttpResponse class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。