Skip to content

Commit b3a8c75

Browse files
Fix to decode binary data from server
1 parent 0ef9b67 commit b3a8c75

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

packages/firebase_data_connect/firebase_data_connect/lib/src/network/websocket_transport.dart

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,15 @@ class WebSocketTransport implements DataConnectTransport {
210210
// called when a message is received from the stream
211211
void _onMessage(dynamic message) {
212212
try {
213-
developer.log("Received stream response \n $message");
214-
final bodyJson = jsonDecode(message as String) as Map<String, dynamic>;
213+
var bodyString = '';
214+
if (message is List<int>) {
215+
bodyString = utf8.decode(message);
216+
} else {
217+
bodyString = message as String;
218+
}
219+
developer.log("Received stream response \n $bodyString");
220+
221+
final bodyJson = jsonDecode(bodyString) as Map<String, dynamic>;
215222
final response = StreamResponse.fromJson(bodyJson);
216223

217224
final requestId = response.requestId;

0 commit comments

Comments
 (0)