使用Ruby中的net / http在公司代理后面发送请求

时间:2018-04-18 07:43:48

标签: ruby docker proxy net-http

我在公司代理后面工作,我使用一些框架设置了一个仪表板。仪表板在Docker容器中运行。针对第三方组件的请求的后端由Ruby作业处理。

我尝试从一个作业连接我的仪表板(位于代理后面)到Jenkins组件(在公司外部)。我希望使用nil传递代理,以便仪表板可以从Jenkins获取一些信息。

以下是连接的代码:

require 'net/http'
require 'json'           

JENKINS_URI = "XXX.XXX.XXX.XX:8080"
JENKINS_AUTH = {
}

def getFromJenkins(path)
  req_options = {
    proxy_address = nil,
    proxy_port = nil,
  }

  uri = URI.parse(path)
  http = Net::HTTP.new(uri.host, uri.port, req_options, proxy_address, 
  proxy_port)
  request = Net::HTTP::Get.new(uri.request_uri)
  if JENKINS_AUTH['name']
    request.basic_auth(JENKINS_AUTH['name'], JENKINS_AUTH['password'])
  end
  response = http.request(request)

  json = JSON.parse(response.body)
  return json
end

我已经尝试使用tcpdump端口8080监听来自Jenkins服务器的一些数据包,但没有结果。

0 个答案:

没有答案