使用带有API密钥的HTTParty的请求

问题描述 投票:1回答:1

我正在尝试对此API进行GET请求,该请求在POSTMAN中可以正常工作。在我的应用程序中,我使用HTTParty发出相同的请求,但我无法正确构建请求,导致返回{"statusCode"=>404, "error"=>"Not Found", "message"=>"Not Found"}。我尝试了许多变体,但还没有找到正确的结构或参数的命名。仅供参考,其中ENV [“ X-CMC_PRO_API_KEY”]是保存我的api密钥的环境变量。

url = 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest/'

request = HTTParty.get(url,
  {
    headers: {
    "key": ENV["X-CMC_PRO_API_KEY"],
    "Accept": "application/json"
    },
    data: {
      id: 1
    },
    params: {
      slug: self.slug
    }
  }
)
response = JSON.parse(request.body)

这是API文档建议的cURL应该是这样的>>

curl -H "X-CMC_PRO_API_KEY: apikey" -H "Accept: application/json" -d "id=1" -G https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest

这些是POSTMAN的屏幕,其中请求返回正确的响应。image1image2

我非常感谢您提供帮助,以帮助我完成此请求。我是新手,HTTParty文档没有帮助,也没有找到其他类似的例子。

我正在尝试对此API进行GET请求,该请求在POSTMAN中可以正常工作。在我的应用程序中,我使用HTTParty发出相同的请求,但未能正确构建请求,导致出现{...

rubygems httprequest api-key ruby-on-rails-6 httparty
1个回答
0
投票

这对我有用

© www.soinside.com 2019 - 2024. All rights reserved.