dart:html
库中HttpRequest.request
方法的用法介绍如下。
用法:
Future<HttpRequest> request(
String url,
{String? method,
bool? withCredentials,
String? responseType,
String? mimeType,
Map<String, String>? requestHeaders,
dynamic sendData,
void onProgress(
ProgressEvent e
)?}
)
为指定的 url
创建并发送 URL 请求。
默认情况下 request
将执行 HTTP GET 请求,但可以通过指定 method
参数来使用不同的方法(POST
、PUT
、DELETE
等)。 (仅针对 POST
请求,请参见 HttpRequest.postFormData。
当响应可用时,Future 完成。
如果指定,sendData
将以 ByteBuffer、Blob、Document、String 或 FormData 的形式与 HttpRequest 一起发送数据。
如果指定,responseType
为请求设置所需的响应格式。默认情况下它是String,但也可以是'arraybuffer', 'blob', 'document', 'json',或'text'。另请参阅HttpRequest.responseType 了解更多信息。
withCredentials
参数指定应为请求指定在标头中设置的 cookie(已经)或 authorization headers 等凭据。使用凭据时要记住的详细信息:
- 使用凭据仅对 cross-origin 请求有用。
url
的Access-Control-Allow-Origin
标头不能包含通配符 (*)。url
的Access-Control-Allow-Credentials
标头必须设置为 true。- 如果
Access-Control-Expose-Headers
未设置为 true,则在调用 getAllResponseHeaders 时将仅返回所有响应标头的子集。
以下等效于上面的getString 示例:
var name = Uri.encodeQueryComponent('John');
var id = Uri.encodeQueryComponent('42');
HttpRequest.request('users.json?name=$name&id=$id')
.then((HttpRequest resp) {
// Do something with the response.
});
这是使用 FormData 提交整个表单的示例。
var myForm = querySelector('form#myForm');
var data = new FormData(myForm);
HttpRequest.request('/submit', method: 'POST', sendData: data)
.then((HttpRequest resp) {
// Do something with the response.
});
请注意,只有在清单中具有适当权限的 Chrome 扩展程序才支持对 file://URI 的请求。对 file://URI 的请求也永远不会失败 - Future 将始终成功完成,即使找不到文件。
另请参阅:authorization headers。
相关用法
- Dart HttpRequest.postFormData用法及代码示例
- Dart HttpRequest.getString用法及代码示例
- Dart HttpRequest用法及代码示例
- Dart HttpRequest构造函数用法及代码示例
- Dart HttpResponse用法及代码示例
- 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大神的英文原创作品 request method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。