dart json.encode(data)无法接受其他语言

我目前正在使用dart进行Web开发。使用嘲讽客户端实现服务。但是,发生以下错误。下面的实现代码是一个继承了mockClient的内存中Web

api服务。调用client.send()并返回结果的代码。

test_value是json.encode(数据)的结果。

var test_value = '{"id": 1, "type": "Appetizer", "name": "한글"}';

     return Response (test_value, 200, headers: {'content-type': 'application / json'});

错误

Invalid argument(s): String contains invalid characters.

dart:convert Latin1Codec.encode

package:http/src/response.dart 36:49 new Response

package:basil/common/mock_rest/mock_recipe.dart 40:12 MockRecipe._handler

如果在上述实现代码的名称中放入英语字符串,则不会出错。为什么我插入英语以外的其他字符会出现错误?

如果您知道,请告诉我!

在韩国独自奋斗的飞镖程序员

回答:

Response除非别的东西类使用Latin-1编码的身体。这在构造函数本身上没有明确记录,但是bodygetter上的文档确实建议这样做。

尝试在标头中设置字符集/编码,例如:

return Response(test_value, 200, headers: {

HttpHeaders.contentTypeHeader: 'application/json; charset=utf-8'

});

以上是 dart json.encode(data)无法接受其他语言 的全部内容, 来源链接: utcz.com/qa/426626.html

回到顶部