Committed by
GitHub
Merge pull request #1424 from heftekharm/response-fix-encoding
changed response default encoding from latin1 to utf8
Showing
1 changed file
with
5 additions
and
9 deletions
@@ -60,14 +60,13 @@ class Response<T> { | @@ -60,14 +60,13 @@ class Response<T> { | ||
60 | final T? body; | 60 | final T? body; |
61 | } | 61 | } |
62 | 62 | ||
63 | -Future<String> bodyBytesToString( | ||
64 | - Stream<List<int>> bodyBytes, Map<String, String> headers) { | 63 | +Future<String> bodyBytesToString(Stream<List<int>> bodyBytes, Map<String, String> headers) { |
65 | return bodyBytes.bytesToString(_encodingForHeaders(headers)); | 64 | return bodyBytes.bytesToString(_encodingForHeaders(headers)); |
66 | } | 65 | } |
67 | 66 | ||
68 | /// Returns the encoding to use for a response with the given headers. | 67 | /// Returns the encoding to use for a response with the given headers. |
69 | /// | 68 | /// |
70 | -/// Defaults to [latin1] if the headers don't specify a charset or if that | 69 | +/// Defaults to [utf8] if the headers don't specify a charset or if that |
71 | /// charset is unknown. | 70 | /// charset is unknown. |
72 | Encoding _encodingForHeaders(Map<String, String> headers) => | 71 | Encoding _encodingForHeaders(Map<String, String> headers) => |
73 | _encodingForCharset(_contentTypeForHeaders(headers).parameters!['charset']); | 72 | _encodingForCharset(_contentTypeForHeaders(headers).parameters!['charset']); |
@@ -76,7 +75,7 @@ Encoding _encodingForHeaders(Map<String, String> headers) => | @@ -76,7 +75,7 @@ Encoding _encodingForHeaders(Map<String, String> headers) => | ||
76 | /// | 75 | /// |
77 | /// Returns [fallback] if [charset] is null or if no [Encoding] was found that | 76 | /// Returns [fallback] if [charset] is null or if no [Encoding] was found that |
78 | /// corresponds to [charset]. | 77 | /// corresponds to [charset]. |
79 | -Encoding _encodingForCharset(String? charset, [Encoding fallback = latin1]) { | 78 | +Encoding _encodingForCharset(String? charset, [Encoding fallback = utf8]) { |
80 | if (charset == null) return fallback; | 79 | if (charset == null) return fallback; |
81 | return Encoding.getByName(charset) ?? fallback; | 80 | return Encoding.getByName(charset) ?? fallback; |
82 | } | 81 | } |
@@ -102,9 +101,7 @@ class HeaderValue { | @@ -102,9 +101,7 @@ class HeaderValue { | ||
102 | } | 101 | } |
103 | 102 | ||
104 | static HeaderValue parse(String value, | 103 | static HeaderValue parse(String value, |
105 | - {String parameterSeparator = ';', | ||
106 | - String? valueSeparator, | ||
107 | - bool preserveBackslash = false}) { | 104 | + {String parameterSeparator = ';', String? valueSeparator, bool preserveBackslash = false}) { |
108 | var result = HeaderValue(); | 105 | var result = HeaderValue(); |
109 | result._parse(value, parameterSeparator, valueSeparator, preserveBackslash); | 106 | result._parse(value, parameterSeparator, valueSeparator, preserveBackslash); |
110 | return result; | 107 | return result; |
@@ -134,8 +131,7 @@ class HeaderValue { | @@ -134,8 +131,7 @@ class HeaderValue { | ||
134 | return stringBuffer.toString(); | 131 | return stringBuffer.toString(); |
135 | } | 132 | } |
136 | 133 | ||
137 | - void _parse(String value, String parameterSeparator, String? valueSeparator, | ||
138 | - bool preserveBackslash) { | 134 | + void _parse(String value, String parameterSeparator, String? valueSeparator, bool preserveBackslash) { |
139 | var index = 0; | 135 | var index = 0; |
140 | 136 | ||
141 | bool done() => index == value.length; | 137 | bool done() => index == value.length; |
-
Please register or login to post a comment