Skip to content

Commit 5fcba56

Browse files
authored
tweak http request header (#176)
* tweak http request header * tweak log level and gem-update
1 parent d594374 commit 5fcba56

File tree

4 files changed

+25
-3
lines changed

4 files changed

+25
-3
lines changed

.travis.yml

-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ rvm:
99
# - 2.6
1010

1111
before_install:
12-
- gem update --system
1312
- gem update bundler
1413

1514
script:

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Read `release_notes.md` for commit level details.
44

55
## [Unreleased]
66
### Enhancements
7+
- Tweak header like `appium/ruby_lib_core/2.2.1 (selenium/3.141.0 (ruby macosx))`
78

89
### Bug fixes
910

lib/appium_lib_core/common/base/http_default.rb

+23-1
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,30 @@ class Default < Selenium::WebDriver::Remote::Http::Default
88
DEFAULT_HEADERS = {
99
'Accept' => CONTENT_TYPE,
1010
'Content-Type' => "#{CONTENT_TYPE}; charset=UTF-8",
11-
'User-Agent' => "appium/ruby_lib_core/#{VERSION}"
11+
'User-Agent' =>
12+
"appium/ruby_lib_core/#{VERSION} (#{::Selenium::WebDriver::Remote::Http::Common::DEFAULT_HEADERS['User-Agent']})"
1213
}.freeze
14+
15+
# override to use default header
16+
# https://github.com/SeleniumHQ/selenium/blob/master/rb/lib/selenium/webdriver/remote/http/common.rb#L46
17+
def call(verb, url, command_hash)
18+
url = server_url.merge(url) unless url.is_a?(URI)
19+
headers = DEFAULT_HEADERS.dup
20+
headers['Cache-Control'] = 'no-cache' if verb == :get
21+
22+
if command_hash
23+
payload = JSON.generate(command_hash)
24+
headers['Content-Length'] = payload.bytesize.to_s if [:post, :put].include?(verb)
25+
26+
Logger.info(" >>> #{url} | #{payload}")
27+
Logger.debug(" > #{headers.inspect}")
28+
elsif verb == :post
29+
payload = '{}'
30+
headers['Content-Length'] = '2'
31+
end
32+
33+
request verb, url, headers, payload
34+
end
1335
end
1436
end
1537
end

test/test_helper.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
require 'minitest/reporters'
99
require 'minitest'
1010

11-
Appium::Logger.level = ::Logger::FATAL # Show Logger logs only they are fatal
11+
Appium::Logger.level = ::Logger::ERROR # Show Logger logs only they are error
1212

1313
Minitest::Reporters.use! Minitest::Reporters::ProgressReporter.new
1414

0 commit comments

Comments
 (0)