如何确定使用哪种编码JSON.stringify()?

时间:2015-10-22 14:53:57

标签: json node.js encoding content-type v8

我正在整理一个节点/快递应用程序,它将返回使用JSON.stringify()序列化的JSON。我想设置Content-Type HTTP标头以包含编​​码信息 - 例如application/json; charset=utf-16

我的理解是JSON.stringify()可能会产生UTF-16UCS-2个编码结果。我如何知道使用哪种编码来序列化JSON,以及通知用户代理正确编码的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

据我所知,它返回一个IEnumerable<InvestigatorGroupData> adminGroups = proxy.GetInvestigatorGroups(adminId); IEnumerable<InvestigatorGroupData> userGroups = proxy.GetInvestigatorGroups(userId); // Groups that admin has and user doesn't. These will be enabled and unselected IEnumerable<InvestigatorGroupData> adminOnlyGroups = adminGroups.Except(userGroups); // Groups that the user has and admin doesn't. These will be disabled and selected IEnumerable<InvestigatorGroupData> userOnlyGroups = userGroups.Except(adminGroups); // Groups in common. These will be enabled and selected IEnumerable<InvestigatorGroupData> commonGroups = adminGroups.Intersect(userGroups); if (commonGroups.IsNullOrEmpty()) { return View("Error"); } 类型的实例,它被定义为零个或多个16位无符号整数的序列(参见spec)。

我引用了上面的链接:

  

String值是String类型的成员。序列中的每个整数值通常表示单个16位UTF-16文本单元。但是,ECMAScript不会对值赋予任何限制或要求,除非它们必须是16位无符号整数。

因此,我猜它是实现定义的。 This可能是您感兴趣的规范的一部分。