我打算创建一个包含金额的API.我想知道最佳做法是什么,或者某人是否对某些格式有一些好的或坏的经历.
我见过以下两种可能性:
我要在这两者之间来回走动.所以我出去查看其他API使用的内容,并提出以下列表:
因此,在18个采样的API中,4个使用次要单位,13个使用基本单位,1个使用难以理解的混合物.在13个使用基本单位的人中,10个是以引用的字符串形式传输它们,3个是不带引号的小数字(如果你看Intuit则实际为2个半).
我个人觉得不得不解析像"8.20"之类的字符串,因为如果你解析它会变成"8.19999999 ......"如果你错误地使用了浮点数.所以我倾向于只发送整数.但我不认为这是一个很好的论点,我发现通常API倾向于将基本单位作为字符串.
你对每种格式有什么好的论据吗?
整数会吃掉点,那就少了一个字节:D 整数将有一个 max_int,你有足够富有的人可能会溢出吗?
将货币字符串解析为浮点数的人无论如何都会将 int 转换为浮点数。
如果发送二进制数据,整数将比字符串小得多。如果您无论如何发送 xml,您也可以将其定义为一个字符串(该文件可能在发送之前被压缩,对吧?),尝试将其设置为“货币”类型,而不是将其列为完整字符串。