If you look in postman, you will probably see that the Content-Type
http header sent by the server is missing the encoding
tag. This causes the Dart http client to decode the body as Latin-1 instead of utf-8. There’s a simple workaround:
http.Response response = await http.get('SOME URL',headers: {'Content-Type': 'application/json'});
List<dynamic> responseJson = json.decode(utf8.decode(response.bodyBytes));