@@ -464,11 +464,13 @@ def build_canonicalized_headers(
464464 tmp = ''
465465 for key in headers_array :
466466 lower_key = StringClient .to_lower (key )
467- if not StringClient .contains (tmp , lower_key ):
468- tmp = f'{ tmp } ,{ lower_key } '
469- new_headers [lower_key ] = StringClient .trim (headers .get (key ))
470- else :
471- new_headers [lower_key ] = f'{ new_headers .get (lower_key )} ,{ StringClient .trim (headers .get (key ))} '
467+ value = headers .get (key )
468+ if not UtilClient .is_unset (value ):
469+ if not StringClient .contains (tmp , lower_key ):
470+ tmp = f'{ tmp } ,{ lower_key } '
471+ new_headers [lower_key ] = StringClient .trim (value )
472+ else :
473+ new_headers [lower_key ] = f'{ new_headers .get (lower_key )} ,{ StringClient .trim (value )} '
472474 canonicalized_headers = ''
473475 sorted_headers = self .get_signed_headers (headers )
474476 for header in sorted_headers :
@@ -486,7 +488,8 @@ def get_signed_headers(
486488 for key in sorted_headers_array :
487489 lower_key = StringClient .to_lower (key )
488490 if StringClient .has_prefix (lower_key , 'x-acs-' ) or StringClient .equals (lower_key , 'host' ) or StringClient .equals (lower_key , 'content-type' ):
489- if not StringClient .contains (tmp , lower_key ):
491+ value = headers .get (key )
492+ if not UtilClient .is_unset (value ) and not StringClient .contains (tmp , lower_key ):
490493 tmp = f'{ tmp } { separator } { lower_key } '
491494 separator = ';'
492495 return StringClient .split (tmp , ';' , None )
0 commit comments