mirror of
https://github.com/HoneyryderChuck/httpx.git
synced 2025-10-04 00:00:37 -04:00
content-digest: set validate_content_digest default to false; do not try to compute content-digest for requests with no body
This commit is contained in:
parent
85019e5493
commit
ac809d18cc
@ -31,7 +31,7 @@ module HTTPX
|
||||
|
||||
class << self
|
||||
def extra_options(options)
|
||||
options.merge(encode_content_digest: true, validate_content_digest: true, content_digest_algorithm: "sha-256")
|
||||
options.merge(encode_content_digest: true, validate_content_digest: false, content_digest_algorithm: "sha-256")
|
||||
end
|
||||
end
|
||||
|
||||
@ -41,7 +41,7 @@ module HTTPX
|
||||
# :encode_content_digest :: whether a <tt>Content-Digest</tt> header should be computed for the request;
|
||||
# can also be a callable object (i.e. <tt>->(req) { ... }</tt>, defaults to <tt>true</tt>)
|
||||
# :validate_content_digest :: whether a <tt>Content-Digest</tt> header in the response should be validated;
|
||||
# can also be a callable object (i.e. <tt>->(res) { ... }</tt>, defaults to <tt>true</tt>)
|
||||
# can also be a callable object (i.e. <tt>->(res) { ... }</tt>, defaults to <tt>false</tt>)
|
||||
module OptionsMethods
|
||||
def option_content_digest_algorithm(value)
|
||||
raise TypeError, ":content_digest_algorithm must be one of 'sha-256', 'sha-512'" unless SUPPORTED_ALGORITHMS.key?(value)
|
||||
@ -96,6 +96,8 @@ module HTTPX
|
||||
def build_request(*)
|
||||
request = super
|
||||
|
||||
return request if request.empty?
|
||||
|
||||
return request if request.headers.key?("content-digest")
|
||||
|
||||
perform_encoding = @options.encode_content_digest
|
||||
|
@ -29,7 +29,7 @@ module Requests
|
||||
|
||||
def test_content_digest_missing_validation_always
|
||||
start_test_servlet(ContentDigestServer) do |server|
|
||||
http = HTTPX.plugin(:content_digest)
|
||||
http = HTTPX.plugin(:content_digest, validate_content_digest: true)
|
||||
|
||||
response = http.get("#{server.origin}/no_content_digest")
|
||||
|
||||
@ -69,7 +69,7 @@ module Requests
|
||||
|
||||
def test_content_digest_invalid_validation_always
|
||||
start_test_servlet(ContentDigestServer) do |server|
|
||||
http = HTTPX.plugin(:content_digest)
|
||||
http = HTTPX.plugin(:content_digest, validate_content_digest: true)
|
||||
|
||||
response = http.get("#{server.origin}/invalid_content_digest")
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user