mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 06:57:44 +00:00
AK+LibWeb: Encode ' ' as '+' in application/x-www-form-urlencoded
This matches what the URL and HTML specifications ask us to do.
This commit is contained in:
parent
74241527d7
commit
3724ce765e
3 changed files with 12 additions and 5 deletions
|
@ -403,11 +403,14 @@ void URL::append_percent_encoded_if_necessary(StringBuilder& builder, u32 code_p
|
|||
builder.append_code_point(code_point);
|
||||
}
|
||||
|
||||
String URL::percent_encode(StringView input, URL::PercentEncodeSet set)
|
||||
String URL::percent_encode(StringView input, URL::PercentEncodeSet set, SpaceAsPlus space_as_plus)
|
||||
{
|
||||
StringBuilder builder;
|
||||
for (auto code_point : Utf8View(input)) {
|
||||
append_percent_encoded_if_necessary(builder, code_point, set);
|
||||
if (space_as_plus == SpaceAsPlus::Yes && code_point == ' ')
|
||||
builder.append('+');
|
||||
else
|
||||
append_percent_encoded_if_necessary(builder, code_point, set);
|
||||
}
|
||||
return builder.to_string();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue