@@ -6,19 +6,19 @@ const { SparqlClient, SPARQL } = SC2;
6
6
7
7
// builds a new sparqlClient
8
8
function newSparqlClient ( ) {
9
- let options = {
10
- requestDefaults : {
11
- headers : {
12
- 'mu-session-id' : httpContext . get ( 'request' ) . get ( 'mu-session-id' ) ,
13
- 'mu-call-id' : httpContext . get ( 'request' ) . get ( 'mu-call-id' ) ,
14
- 'mu-auth-allowed-groups' : httpContext . get ( 'request' ) . get ( 'mu-auth-allowed-groups' ) // groups of incoming request
15
- }
16
- }
17
- } ;
9
+ let options = { requestDefaults : { headers : { } } } ;
10
+
11
+ if ( httpContext . get ( 'request' ) ) {
12
+ options . requestDefaults . headers [ 'mu-session-id' ] = httpContext . get ( 'request' ) . get ( 'mu-session-id' ) ;
13
+ options . requestDefaults . headers [ 'mu-call-id' ] = httpContext . get ( 'request' ) . get ( 'mu-call-id' ) ;
14
+ options . requestDefaults . headers [ 'mu-auth-allowed-groups' ] = httpContext . get ( 'request' ) . get ( 'mu-auth-allowed-groups' ) ; // groups of incoming request
15
+ }
18
16
19
- const allowedGroups = httpContext . get ( 'response' ) . get ( 'mu-auth-allowed-groups' ) ; // groups returned by a previous SPARQL query
20
- if ( allowedGroups )
21
- options . requestDefaults . headers [ 'mu-auth-allowed-groups' ] = allowedGroups ;
17
+ if ( httpContext . get ( 'response' ) ) {
18
+ const allowedGroups = httpContext . get ( 'response' ) . get ( 'mu-auth-allowed-groups' ) ; // groups returned by a previous SPARQL query
19
+ if ( allowedGroups )
20
+ options . requestDefaults . headers [ 'mu-auth-allowed-groups' ] = allowedGroups ;
21
+ }
22
22
23
23
console . log ( `Headers set on SPARQL client: ${ JSON . stringify ( options ) } ` ) ;
24
24
@@ -34,24 +34,26 @@ function query( queryString ) {
34
34
console . log ( queryString ) ;
35
35
return newSparqlClient ( ) . query ( queryString ) . executeRaw ( ) . then ( response => {
36
36
37
- // set mu-auth-allowed-groups on outgoing response
38
- const allowedGroups = response . headers [ 'mu-auth-allowed-groups' ] ;
39
- if ( allowedGroups ) {
40
- httpContext . get ( 'response' ) . setHeader ( 'mu-auth-allowed-groups' , allowedGroups ) ;
41
- console . log ( `Update mu-auth-allowed-groups to ${ allowedGroups } ` ) ;
42
- } else {
43
- httpContext . get ( 'response' ) . removeHeader ( 'mu-auth-allowed-groups' ) ;
44
- console . log ( 'Remove mu-auth-allowed-groups' ) ;
45
- }
37
+ if ( httpContext . get ( 'response' ) ) {
38
+ // set mu-auth-allowed-groups on outgoing response
39
+ const allowedGroups = response . headers [ 'mu-auth-allowed-groups' ] ;
40
+ if ( allowedGroups ) {
41
+ httpContext . get ( 'response' ) . setHeader ( 'mu-auth-allowed-groups' , allowedGroups ) ;
42
+ console . log ( `Update mu-auth-allowed-groups to ${ allowedGroups } ` ) ;
43
+ } else {
44
+ httpContext . get ( 'response' ) . removeHeader ( 'mu-auth-allowed-groups' ) ;
45
+ console . log ( 'Remove mu-auth-allowed-groups' ) ;
46
+ }
46
47
47
- // set mu-auth-used-groups on outgoing response
48
- const usedGroups = response . headers [ 'mu-auth-used-groups' ] ;
49
- if ( usedGroups ) {
50
- httpContext . get ( 'response' ) . setHeader ( 'mu-auth-used-groups' , usedGroups ) ;
51
- console . log ( `Update mu-auth-used-groups to ${ usedGroups } ` ) ;
52
- } else {
53
- httpContext . get ( 'response' ) . removeHeader ( 'mu-auth-used-groups' ) ;
54
- console . log ( 'Remove mu-auth-used-groups' ) ;
48
+ // set mu-auth-used-groups on outgoing response
49
+ const usedGroups = response . headers [ 'mu-auth-used-groups' ] ;
50
+ if ( usedGroups ) {
51
+ httpContext . get ( 'response' ) . setHeader ( 'mu-auth-used-groups' , usedGroups ) ;
52
+ console . log ( `Update mu-auth-used-groups to ${ usedGroups } ` ) ;
53
+ } else {
54
+ httpContext . get ( 'response' ) . removeHeader ( 'mu-auth-used-groups' ) ;
55
+ console . log ( 'Remove mu-auth-used-groups' ) ;
56
+ }
55
57
}
56
58
57
59
function maybeParseJSON ( body ) {
0 commit comments