Index: third_party/WebKit/Source/core/dom/URLSearchParams.cpp |
diff --git a/third_party/WebKit/Source/core/dom/URLSearchParams.cpp b/third_party/WebKit/Source/core/dom/URLSearchParams.cpp |
index 141aab146e4f1feaa174d80c4713aa2367b03cf5..b8108c7de3b4fdc38079c0321d9826347888c7b4 100644 |
--- a/third_party/WebKit/Source/core/dom/URLSearchParams.cpp |
+++ b/third_party/WebKit/Source/core/dom/URLSearchParams.cpp |
@@ -5,6 +5,7 @@ |
#include "config.h" |
#include "core/dom/URLSearchParams.h" |
+#include "platform/network/FormDataEncoder.h" |
#include "platform/weborigin/KURL.h" |
#include "wtf/text/StringBuilder.h" |
#include "wtf/text/TextEncoding.h" |
@@ -176,6 +177,16 @@ void URLSearchParams::set(const String& name, const String& value) |
append(name, value); |
} |
+PassRefPtr<EncodedFormData> URLSearchParams::encodeFormData() const |
+{ |
+ RefPtr<EncodedFormData> data = EncodedFormData::create(); |
+ Vector<char> encodedData; |
+ for (const auto& param : m_params) |
+ FormDataEncoder::addKeyValuePairAsFormData(encodedData, param.first.utf8(), param.second.utf8(), EncodedFormData::FormURLEncoded); |
+ data->appendData(encodedData.data(), encodedData.size()); |
+ return data.release(); |
+} |
+ |
DEFINE_TRACE(URLSearchParams) |
{ |
} |