forked from loafle/openapi-generator-original
Expose proxy settings for Ruby Faraday (#11692)
This commit is contained in:
parent
9a33f99937
commit
51ecfcd743
@ -12,6 +12,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
connection = Faraday.new(:url => config.base_url, :ssl => ssl_options) do |conn|
|
connection = Faraday.new(:url => config.base_url, :ssl => ssl_options) do |conn|
|
||||||
|
conn.proxy = config.proxy if config.proxy
|
||||||
conn.request(:basic_auth, config.username, config.password)
|
conn.request(:basic_auth, config.username, config.password)
|
||||||
@config.configure_middleware(conn)
|
@config.configure_middleware(conn)
|
||||||
if opts[:header_params]["Content-Type"] == "multipart/form-data"
|
if opts[:header_params]["Content-Type"] == "multipart/form-data"
|
||||||
@ -62,7 +63,7 @@
|
|||||||
# @option opts [Hash] :query_params Query parameters
|
# @option opts [Hash] :query_params Query parameters
|
||||||
# @option opts [Hash] :form_params Query parameters
|
# @option opts [Hash] :form_params Query parameters
|
||||||
# @option opts [Object] :body HTTP body (JSON/XML)
|
# @option opts [Object] :body HTTP body (JSON/XML)
|
||||||
# @return [Typhoeus::Request] A Typhoeus Request
|
# @return [Faraday::Request] A Faraday Request
|
||||||
def build_request(http_method, path, request, opts = {})
|
def build_request(http_method, path, request, opts = {})
|
||||||
url = build_request_url(path, opts)
|
url = build_request_url(path, opts)
|
||||||
http_method = http_method.to_sym.downcase
|
http_method = http_method.to_sym.downcase
|
||||||
@ -73,12 +74,6 @@
|
|||||||
|
|
||||||
update_params_for_auth! header_params, query_params, opts[:auth_names]
|
update_params_for_auth! header_params, query_params, opts[:auth_names]
|
||||||
|
|
||||||
req_opts = {
|
|
||||||
:params_encoding => @config.params_encoding,
|
|
||||||
:timeout => @config.timeout,
|
|
||||||
:verbose => @config.debugging
|
|
||||||
}
|
|
||||||
|
|
||||||
if [:post, :patch, :put, :delete].include?(http_method)
|
if [:post, :patch, :put, :delete].include?(http_method)
|
||||||
req_body = build_request_body(header_params, form_params, opts[:body])
|
req_body = build_request_body(header_params, form_params, opts[:body])
|
||||||
if @config.debugging
|
if @config.debugging
|
||||||
@ -87,7 +82,12 @@
|
|||||||
end
|
end
|
||||||
request.headers = header_params
|
request.headers = header_params
|
||||||
request.body = req_body
|
request.body = req_body
|
||||||
request.options = OpenStruct.new(req_opts)
|
|
||||||
|
# Overload default options only if provided
|
||||||
|
request.options.params_encoding = @config.params_encoding if @config.params_encoding
|
||||||
|
request.options.timeout = @config.timeout if @config.timeout
|
||||||
|
request.options.verbose = @config.debugging if @config.debugging
|
||||||
|
|
||||||
request.url url
|
request.url url
|
||||||
request.params = query_params
|
request.params = query_params
|
||||||
download_file(request) if opts[:return_type] == 'File'
|
download_file(request) if opts[:return_type] == 'File'
|
||||||
|
@ -27,3 +27,7 @@
|
|||||||
### TLS/SSL setting
|
### TLS/SSL setting
|
||||||
# Client private key file (for client certificate)
|
# Client private key file (for client certificate)
|
||||||
attr_accessor :ssl_client_key
|
attr_accessor :ssl_client_key
|
||||||
|
|
||||||
|
### Proxy setting
|
||||||
|
# HTTP Proxy settings
|
||||||
|
attr_accessor :proxy
|
||||||
|
Loading…
x
Reference in New Issue
Block a user