@@ -20,14 +20,14 @@ def parameters
20
20
21
21
def requests
22
22
super . map do |request |
23
- request [ :request_headers_text ] = remove_utf8_for_json ( request [ :request_headers_text ] )
23
+ request [ :request_headers_text ] = remove_utf8_for_json ( remove_content_type ( request [ :request_headers_text ] ) )
24
24
request [ :request_headers_text ] = indent ( request [ :request_headers_text ] )
25
25
request [ :request_content_type ] = content_type ( request [ :request_headers ] )
26
26
request [ :request_content_type ] = remove_utf8_for_json ( request [ :request_content_type ] )
27
27
request [ :request_body ] = body_to_json ( request , :request )
28
28
request [ :request_body ] = indent ( request [ :request_body ] )
29
29
30
- request [ :response_headers_text ] = remove_utf8_for_json ( request [ :response_headers_text ] )
30
+ request [ :response_headers_text ] = remove_utf8_for_json ( remove_content_type ( request [ :response_headers_text ] ) )
31
31
request [ :response_headers_text ] = indent ( request [ :response_headers_text ] )
32
32
request [ :response_content_type ] = content_type ( request [ :response_headers ] )
33
33
request [ :response_content_type ] = remove_utf8_for_json ( request [ :response_content_type ] )
@@ -78,6 +78,18 @@ def body_to_json(http_call, message_direction)
78
78
body
79
79
end
80
80
81
+ # `Content-Type` header is removed because the information would be duplicated
82
+ # since it's already present in `request[:request_content_type]`.
83
+ def remove_content_type ( headers )
84
+ return unless headers
85
+ headers
86
+ . split ( "\n " )
87
+ . reject { |header |
88
+ header . start_with? ( 'Content-Type:' )
89
+ }
90
+ . join ( "\n " )
91
+ end
92
+
81
93
# JSON requests should use UTF-8 by default according to
82
94
# http://www.ietf.org/rfc/rfc4627.txt, so we will remove `charset=utf-8`
83
95
# when we find it to remove noise.
0 commit comments