条带最大数据长度

Posted

技术标签:

【中文标题】条带最大数据长度【英文标题】:Stripe maximum data lengths 【发布时间】:2017-12-15 22:32:45 【问题描述】:

我正在使用 Stripe 的简单“结帐”,是否有详细说明接受和返回数据的最大长度的规范,例如以下数据:

customer id
description
risk level
address_line1
etc

【问题讨论】:

不幸的是,Stripe 不共享该数据。 ID 的长度约为 16-27 个字符;但是,我们通常建议设置更大的值以防发生变化(例如 32-64 个字符)。其他属性定义较少。 关于ids,从 2013 年开始,this post 表示:“我们很快就会增加 Stripe API 返回的大多数 ID 的长度(大约 30 个字符)。我们故意从未公布过这些 ID 的长度,但我们想让人们知道,以防他们依赖现有的长度。我们将来可能会改变 ID 的长度,但您可以放心地假设它们永远不会超过 255 个字符。” 确认@FabienSnauwaert 来自Stripe API docs:“您可以放心地假设我们生成的对象 ID 永远不会超过 255 个字符,但您应该能够处理不超过该长度的 ID。例如,如果您'正在使用 mysql,您应该将 ID 存储在 VARCHAR(255) COLLATE utf8_bin 列中(COLLATE 配置确保查找时区分大小写)。" 目前payment_intent的描述限制为1000。我认为这取决于数据类型。最好自己测试一下。 【参考方案1】:

客户 ID 的最大长度为 255

描述的最大长度为350(将来可能会改变)

复制自doc,

您可以放心地假设我们生成的对象 ID 永远不会超过 255 个字符,但您应该能够处理不超过该长度的 ID。例如,如果您使用 MySQL,则应将 ID 存储在 VARCHAR(255) COLLATE utf8_bin 列中(COLLATE 配置可确保查找时区分大小写)。

客户端点上的描述字段现在最大字符长度限制为 350

【讨论】:

payment_method.billing_details.name 的最大长度为 5000 个字符。我不明白为什么这么长是可以接受的,为什么 Stripe 不能公布这些可怕字段的最大长度。 如果在 mysql 中使用唯一索引,mysql 5.6 及之前版本的一个重要注意事项是你的最大长度不能超过 191。所以如果你需要超过这个你需要做使用代码检查。

以上是关于条带最大数据长度的主要内容,如果未能解决你的问题,请参考以下文章

条带化

RAID中条带的概念

大数据分包算法

Mysql varchar字段长度越大越好吗?

TCP最大报文段长度MSS

Mysql大数据量问题与解决