@@ -29,12 +29,14 @@ internal class RuntimeApiHeaders
29
29
30
30
public RuntimeApiHeaders ( Dictionary < string , IEnumerable < string > > headers )
31
31
{
32
- DeadlineMs = GetHeaderValueOrNull ( headers , HeaderDeadlineMs ) ;
33
- AwsRequestId = GetHeaderValueRequired ( headers , HeaderAwsRequestId ) ;
34
- ClientContextJson = GetHeaderValueOrNull ( headers , HeaderClientContext ) ;
35
- CognitoIdentityJson = GetHeaderValueOrNull ( headers , HeaderCognitoIdentity ) ;
36
- InvokedFunctionArn = GetHeaderValueOrNull ( headers , HeaderInvokedFunctionArn ) ;
37
- TraceId = GetHeaderValueOrNull ( headers , HeaderTraceId ) ;
32
+ var caseInsensitiveHeaders = new Dictionary < string , IEnumerable < string > > ( headers , StringComparer . OrdinalIgnoreCase ) ;
33
+
34
+ DeadlineMs = GetHeaderValueOrNull ( caseInsensitiveHeaders , HeaderDeadlineMs ) ;
35
+ AwsRequestId = GetHeaderValueRequired ( caseInsensitiveHeaders , HeaderAwsRequestId ) ;
36
+ ClientContextJson = GetHeaderValueOrNull ( caseInsensitiveHeaders , HeaderClientContext ) ;
37
+ CognitoIdentityJson = GetHeaderValueOrNull ( caseInsensitiveHeaders , HeaderCognitoIdentity ) ;
38
+ InvokedFunctionArn = GetHeaderValueOrNull ( caseInsensitiveHeaders , HeaderInvokedFunctionArn ) ;
39
+ TraceId = GetHeaderValueOrNull ( caseInsensitiveHeaders , HeaderTraceId ) ;
38
40
}
39
41
40
42
public string AwsRequestId { get ; private set ; }
@@ -46,14 +48,12 @@ public RuntimeApiHeaders(Dictionary<string, IEnumerable<string>> headers)
46
48
47
49
private string GetHeaderValueRequired ( Dictionary < string , IEnumerable < string > > headers , string header )
48
50
{
49
- var headerKey = headers . Keys . FirstOrDefault ( k => string . Equals ( k , header , StringComparison . OrdinalIgnoreCase ) ) ;
50
- return headers [ headerKey ] . FirstOrDefault ( ) ;
51
+ return headers [ header ] . FirstOrDefault ( ) ;
51
52
}
52
53
53
54
private string GetHeaderValueOrNull ( Dictionary < string , IEnumerable < string > > headers , string header )
54
55
{
55
- var headerKey = headers . Keys . FirstOrDefault ( k => string . Equals ( k , header , StringComparison . OrdinalIgnoreCase ) ) ;
56
- if ( headers . TryGetValue ( headerKey , out var values ) )
56
+ if ( headers . TryGetValue ( header , out var values ) )
57
57
{
58
58
return values . FirstOrDefault ( ) ;
59
59
}
0 commit comments