| Index: tools/dom/templates/html/impl/impl_XMLHttpRequest.darttemplate
|
| diff --git a/tools/dom/templates/html/impl/impl_XMLHttpRequest.darttemplate b/tools/dom/templates/html/impl/impl_XMLHttpRequest.darttemplate
|
| index 492fcc9a6ff7c944fe8e0e28e376f65fb9210219..4a6a45e7a355224ef2cea973f7c6158de45dd945 100644
|
| --- a/tools/dom/templates/html/impl/impl_XMLHttpRequest.darttemplate
|
| +++ b/tools/dom/templates/html/impl/impl_XMLHttpRequest.darttemplate
|
| @@ -52,6 +52,40 @@ $(ANNOTATIONS)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC {
|
| }
|
|
|
| /**
|
| + * Makes a server POST request with the specified data encoded as form data.
|
| + *
|
| + * This is similar to sending a FormData object with broader browser
|
| + * support but limited to string values.
|
| + *
|
| + * See also:
|
| + *
|
| + * * [request]
|
| + */
|
| + static Future<HttpRequest> postFormData(String url, Map<String, String> data,
|
| + {bool withCredentials, String responseType,
|
| + Map<String, String> requestHeaders,
|
| + void onProgress(ProgressEvent e)}) {
|
| +
|
| + var parts = [];
|
| + data.forEach((key, value) {
|
| + parts.add('${Uri.encodeQueryComponent(key)}='
|
| + '${Uri.encodeQueryComponent(value)}');
|
| + });
|
| + var formData = parts.join('&');
|
| +
|
| + if (requestHeaders == null) {
|
| + requestHeaders = <String, String>{};
|
| + }
|
| + requestHeaders.putIfAbsent('Content-Type',
|
| + () => 'application/x-www-form-urlencoded; charset=UTF-8');
|
| +
|
| + return request(url, method: 'POST', withCredentials: withCredentials,
|
| + responseType: responseType,
|
| + requestHeaders: requestHeaders, sendData: formData,
|
| + onProgress: onProgress);
|
| + }
|
| +
|
| + /**
|
| * Creates a URL request for the specified [url].
|
| *
|
| * By default this will do an HTTP GET request, this can be overridden with
|
|
|