@@ -108,15 +108,21 @@ export class EdgeKV {
108108 }
109109 }
110110
111- getNamespaceToken ( namespace ) {
111+ getNamespaceTokenHeader ( namespace ) {
112112 if ( this . #token_override) {
113113 return this . #token_override;
114114 }
115115 let name = "namespace-" + namespace ;
116116 if ( ! ( name in edgekv_access_tokens ) ) {
117117 throw "MISSING ACCESS TOKEN. No EdgeKV Access Token defined for namespace '" + namespace + "'." ;
118118 }
119- return edgekv_access_tokens [ name ] [ "value" ] ;
119+ if ( "value" in edgekv_access_tokens [ name ] ) {
120+ return { 'X-Akamai-EdgeDB-Auth' : [ edgekv_access_tokens [ name ] [ "value" ] ] } ;
121+ } else if ( "reference" in edgekv_access_tokens [ name ] ) {
122+ return { 'X-Akamai-EdgeDB-Auth-Ref' : [ edgekv_access_tokens [ name ] [ "reference" ] ] } ;
123+ } else {
124+ throw "MISSING ACCESS TOKEN. No EdgeKV Access Token value or reference defined for namespace '" + namespace + "'." ;
125+ }
120126 }
121127
122128 addTimeout ( options , timeout ) {
@@ -161,7 +167,7 @@ export class EdgeKV {
161167 return httpRequest ( this . addSandboxId ( uri ) , this . addTimeout ( {
162168 method : "PUT" ,
163169 body : typeof value === "object" ? JSON . stringify ( value ) : value ,
164- headers : { "X-Akamai-EdgeDB-Auth" : [ this . getNamespaceToken ( namespace ) ] }
170+ headers : { ... this . getNamespaceTokenHeader ( namespace ) }
165171 } , timeout ) ) ;
166172 }
167173
@@ -248,7 +254,7 @@ export class EdgeKV {
248254 let uri = this . #edgekv_uri + "/api/v1/namespaces/" + namespace + "/groups/" + group + "/items/" + item ;
249255 return httpRequest ( this . addSandboxId ( uri ) , this . addTimeout ( {
250256 method : "GET" ,
251- headers : { "X-Akamai-EdgeDB-Auth" : [ this . getNamespaceToken ( namespace ) ] }
257+ headers : { ... this . getNamespaceTokenHeader ( namespace ) }
252258 } , timeout ) ) ;
253259 }
254260
@@ -303,7 +309,7 @@ export class EdgeKV {
303309 let uri = this . #edgekv_uri + "/api/v1/namespaces/" + namespace + "/groups/" + group + "/items/" + item ;
304310 return httpRequest ( this . addSandboxId ( uri ) , this . addTimeout ( {
305311 method : "DELETE" ,
306- headers : { "X-Akamai-EdgeDB-Auth" : [ this . getNamespaceToken ( namespace ) ] }
312+ headers : { ... this . getNamespaceTokenHeader ( namespace ) }
307313 } , timeout ) ) ;
308314 }
309315
0 commit comments