api - 如何在我的 API 中使用适当的国际格式提供数字响应?
问题描述
一些使用我的 API 的客户说其他语言,并且生活在使用不同数字格式的其他国家。目前,当从我的 API 返回数值时,json 中的值可能如下所示:
...
"sphereDimensions": {
"value": 3.6,
"unit": "cm"
}
...
出现了一个问题,即在加拿大等非英语国家,使用逗号而不是句点来分隔整数和小数。当调用系统解析 json 以提取 value 字段时,这会导致一些错误,因为调用系统需要数字来使用逗号而不是句点。
我的团队一直在考虑这些潜在的解决方案来解决这个问题:
- 调用 API 的客户端将数据保存为我们的格式,然后仅在显示在他们身边时,在该点进行格式化;但是,这将要求所有消费客户端在我们无法控制的一端进行代码更改,如果不是所有客户端同时进行更改,可能会导致业务中断。
- 我们在 API 中提供语言代码,使用字符串类型而不是数字作为值,并让调用 API 的客户端将字符串转换回数字。这将需要在 API 上增加额外的编程复杂性,以根据给定的语言和地区指定格式,并且所有客户端也需要进行更改
其中哪一个是首选,或者如果它们都不是,这个国际化 API 编号的问题通常在行业中如何处理?
解决方案
推荐阅读
- mysql - 似乎无法使用 phpmyadmin 向我的数据库添加多个列
- reactjs - 创建 Google Maps Circle 并在 React 中设置其半径
- angular - 如何使用 login() 通过 nebular auth/login 库导航到主页?
- firebase - Firebase 实时数据库(根据 UID 获取其他用户信息)与 REST
- c++ - 如何从 C++ 调用动态库函数?
- javascript - 如何检查对象数组中的键是否为空?
- css - 嵌套边界不会留在主要内部输入时:选中
- jquery - 为什么数据表不适用于gridview?
- python - Tensorflow 中的张量运算
- assembly - 向 BX 寄存器写入值对 ES 寄存器有影响吗?