我有一张票表,每张票都有价格。我在数据库中将基础设置为美元,可以说有人想从美国以外的国家/地区购买机票,我想以当地货币向用户显示价格。什么是适当的方法。首先,我虽然可以在运行时将门票价格转换为本地货币,但是由于门票数量可能很大,因此此操作的成本很高。
对于货币换算,我正在使用Open Exchange Rates API,我需要根据通过req.query
提供的货币提供价格。
我无法在此处显示实际代码,但有一个示例:
const express = require('express');
const Product = require('../models/Product');
const { fetchRates } = require('../services/fx_rates')
const router = new express.Router();
router.post('/products', async (req, res) => {
const product = new Product({
...req.body
});
try {
await product.save();
res.status(201).send(product);
} catch (e) {
res.send(400).send(e);
}
});
router.get('/products', async (req, res) => {
try {
const products = await Product.find()
// if (req.query.to) {
// for (let product of products) {
// fetchRates(product.price, 'USD', to)
// .then(price => {
// product.price = price
// })
// .catch(e => console.log(e))
// }
// }
console.log(products)
res.status(200).send({ products: products })
} catch (e) {
res.status(500).send();
}
});
module.exports = router
答案 0 :(得分:0)
您可以使用nodejs-currency-converter npm。