【问题标题】:How do I prevent Faraday from stripping the trailing slash from a URL?如何防止法拉第从 URL 中删除尾部斜杠?
【发布时间】:2012-10-05 19:10:16
【问题描述】:

我正在尝试使用 Faraday gem(版本 0.8.4)与外部 API 进行交互。 API 需要在 URL 上加上斜杠,例如,https://api.example.com/1.2/。这是我用来发出请求的代码:

connection = Faraday.new(:url => 'https://api.example.com/1.2/')
response = connection.get do |request|
  request.params['api_key'] = 'MY_KEY'
end

不过,在检查响应后,我发现尾部斜杠已从 URL 中删除:

response.env[:url]
=> #<URI::HTTPS:0x007fda3513d5f0 URL:https://api.wpengine.com/1.2?api_key=MY_KEY>

我很难弄清楚如何防止斜线被剥离。有人知道怎么做吗?

【问题讨论】:

标签: ruby http faraday


【解决方案1】:

我能够通过将尾部斜杠移动到 get 方法来使其工作:

connection = Faraday.new(:url => 'https://api.example.com')
response = connection.get('/1.2/') do |request|
  request.params['api_key'] = 'MY_KEY'
end

response.env[:url]
=> #<URI::HTTPS:0x007fdb95166f98 URL:https://api.example.com/1.2/?api_key=MY_KEY>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-19
    • 2017-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-22
    相关资源
    最近更新 更多