gpt4 book ai didi

javascript - 根据用户时区返回本地货币代码

转载 作者:行者123 更新时间:2023-12-02 23:51:44 26 4
gpt4 key购买 nike

我正在寻找一种解决方案来根据用户的时区获取本地货币代码。

使用 Stripe 和 Firebase,我正在 Firebase Auth 上创建 Firestore 记录。当用户注册时,函数会创建包含用户时区的数据库记录。然后还在 Stripe 中创建一个客户。

为了获取用户时区,我使用 moment-timezone 包中提供的 moment.tz.guess() 。然后将其作为 Firestore 记录保存到 Firebase。

函数编码为

exports = module.exports = functions.firestore
.document('users/{uid}')
.onCreate((snap, context) => {
const customerValue = snap.data();
const uid = context.params.uid;
const timezone = moment.tz.guess();
// const currencyCode = ;
return stripe.customers
.create({
email: customerValue.email
})
.then(customer => {
var customerObject = {
id: customer.id,
currencyCode,
};
return admin
.firestore()
.doc(`/users/${uid}/billing/${customer.id}`)
.set(customerObject);
});
});

默认情况下,客户在 Stripe 中以美元形式创建。这完全没问题,但是使用 timezone 是否有 API 或包来识别时区的本地货币代码。例如,如果从 moment 返回的时区是 Australia/Adelaide,我如何让 currencyCode 返回为 aud

我遇到的一个解决方案是使用 country-tz-currency 但我首先需要从时区获取国家/地区代码,我希望有一个更简单的解决方案。

最佳答案

我总是使用this我的项目的 API,这不仅会为您提供基于国家/地区的货币代码,还会提供一些其他有用的数据(如纬度和经度,...)基本上它只是一个 GET 请求,返回您的用户本地对象位置信息,包括大陆代码

它也有很棒的文档,而且好处是最多 10.000 个请求/分钟是免费的。

关于javascript - 根据用户时区返回本地货币代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55611681/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com