Stripe payments 保留条带计划元数据中的类型

Stripe payments 保留条带计划元数据中的类型,stripe-payments,Stripe Payments,我正在创建一个using,其中附加了一些字段作为 Stripe似乎总是将元数据值转换为Strings。我想保留这些类型 我创建了一个类似这样的计划: const basic=wait stripe.plans.create({ product:product.id, 昵称:“富计划”, 金额:1000, 元数据:{ foo:true,//布尔值 酒吧:10/号 } }) 但是,当取回该计划时,元数据字段如下所示: 元数据:{ foo:“true”,//字符串 条形图:“10”//String

我正在创建一个using,其中附加了一些字段作为

Stripe似乎总是将元数据值转换为
String
s。我想保留这些类型

我创建了一个类似这样的计划:

const basic=wait stripe.plans.create({
product:product.id,
昵称:“富计划”,
金额:1000,
元数据:{
foo:true,//布尔值
酒吧:10/号
}
})
但是,当取回该计划时,元数据字段如下所示:

元数据:{
foo:“true”,//字符串
条形图:“10”//String
}

一种解决方案是将元数据存储为单个JSON并进行解析,但我希望避免这种情况。

元数据始终是字符串键和字符串值的字典

我避免将元数据存储为单个JSON字符串,因为元数据值的最大长度为500个字符,并且在值字段中存储JSON通常会导致与超出此限制相关的错误


我最终开始存储一个JSON,然后像这样进行解析:

const basic=wait stripe.plans.create({
product:product.id,
昵称:“富计划”,
金额:1000,
元数据:{
限制:JSON.stringify({
傅:是的,
酒吧:10
})
}
})
const getPlan=planId=>stripe.plans.retrieve(planId)
.then(数据=>Object.assign(数据、{
元数据:JSON.parse(data.metadata.restrictions)
}))
const plan=wait getPlan('id-foo-plan')
console.log(plan.metadata)
仅供参考,来自:

您最多可以指定50个键,其中键名最长为40个字符,值最长为500个字符