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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。