如何使用REST API将任何金额从一种货币转换为另一种货币

时间:2020-08-06 08:22:33

标签: api rest currency

我正在寻找一种API,该API可用于将任何金额从一种货币转换为另一种货币。我特别希望将南非兰特转换为尼日利亚奈拉。

到目前为止我已经尝试过

http://data.fixer.io/api/convert

    ? access_key = YOUR_ACCESS_KEY
    & from = ZAR
    & to = NGN
    & amount = 25

我也尝试过

http://apilayer.net/api/live?access_key = 01ac7912e45de0fb9ab2d3619f85bd54& from = ZAR& to = NGN& amount = 10

我也尝试过

https://www.alphavantage.co/query?function=CURRENCY_EXCHANGE_RATE&from_currency=ZAR&to_currency=NGN&apikey=ZRH58691ZX2ENX1U&datatype=json";

1 个答案:

答案 0 :(得分:1)

编辑

我找到了一个提供符合您需求的API的网站,您可以订购一个免费的API密钥(在以下示例中,我将提供我的免费密钥( 9f13aadc1c18fd085b98 )):

https://free.currconv.com/api/v7/convert?q=NGN_ZAR&compact=ultra&apiKey=9f13aadc1c18fd085b98 

有了这个,我得到以下输出:

{"NGN_ZAR":0.044899}

参数非常简单,您只需要使用q=FROM_TO,其中FROM可以是NGN,而TO可以是ZAR,结果将给出 FROM的数量您需要有1个 TO (或者相反,我没有做数学运算。)

您可以在此处查看文档:{​​{3}}


原始答案

apilayer.net

当我尝试获取您的apilayer.net请求时,我得到了:

{
  "success": false,
  "error": {
    "code": 101,
    "type": "missing_access_key",
    "info": "You have not supplied an API Access Key. [Required format: access_key=YOUR_ACCESS_KEY]"
  }
}

这意味着您需要提供一个API密钥(必须订阅apilayer.net并获取一个API密钥),而应该调用此URL:

https://api.currencylayer.com/convert?access_key=YOUR_ACCESS_KEY&from=NGN&to=ZAR&amount=10

alphavantage.co

当我尝试获取您的alphavantage.co请求时,我得到了:

> https://www.alphavantage.co/query?function=CURRENCY_EXCHANGE_RATE&from_currency=ZAR&to_currency=NGN&apikey=ZRH58691ZX2ENX1U
{
    "Error Message": "Invalid API call. Please retry or visit the documentation (https://www.alphavantage.co/documentation/) for CURRENCY_EXCHANGE_RATE."
}

但是当我尝试使用欧元和BTC时,我得到了:

> https://www.alphavantage.co/query?function=CURRENCY_EXCHANGE_RATE&from_currency=BTC&to_currency=EUR&apikey=ZRH58691ZX2ENX1U
{
    "Realtime Currency Exchange Rate": {
        "1. From_Currency Code": "BTC",
        "2. From_Currency Name": "Bitcoin",
        "3. To_Currency Code": "EUR",
        "4. To_Currency Name": "Euro",
        "5. Exchange Rate": "9901.50756600",
        "6. Last Refreshed": "2020-08-06 09:35:01",
        "7. Time Zone": "UTC",
        "8. Bid Price": "9901.50756600",
        "9. Ask Price": "9901.51600000"
    }
}

原因是即使这些API提供了正确的ISO代码,这些API也无法将ZAR和NGN识别为货币符号