在gem中使用具有RestClient的代理

时间:2018-01-06 02:58:35

标签: ruby-on-rails ruby

我正在使用gem nba_stats,它会查询nba.com的统计信息api。但我需要使用它的代理,而gem不提供这种能力。

浏览gem的代码,我see

@resource ||= RestClient::Resource.new(endpoint)

我可以设置RestClient.proxy并且gem会使用代理吗?

我试过

RestClient.proxy = "http://123@proxy.crawlera.com:8010"
play_by_play = client.play_by_play('0021301230')

但是我收到了错误

URI::InvalidURIError: bad URI(is not URI?): http://123@proxy.crawlera.com:8010

我也试过这个,有和没有':',并得到了同样的错误。

uri = URI.parse("http://proxy.crawlera.com")
uri.port = 8010
uri.user = "83a17a4219d543ef8800965d4293ac5d:"
RestClient.proxy = uri
client = NbaStats::Client.new
play_by_play = client.play_by_play('0021301230')

1 个答案:

答案 0 :(得分:3)

我认为您的代理网址无效,格式应为http://username:password@example.com/