Konfiguracija
Velja za različico 0.2.1. Nastavitve so v konfiguraciji aplikacije v razdelku GatewayClient
(GatewayClientOptions.SectionName) in se preverijo ob zagonu aplikacije. Če nastavitev krši
pravilo v stolpcu „Veljavno“, se aplikacija ne zažene, sporočilo pa navede vsako napačno nastavitev.
| Nastavitev | Privzeto | Veljavno | Pomen |
|---|---|---|---|
BaseAddress | – | obvezno; absoluten naslov s https, s http (od 0.3.0) samo za lokalni računalnik (localhost, 127.0.0.1, ::1) | Naslov prehoda. Prek http do drugega računalnika bi ključ potoval po omrežju nešifriran; odjemalec to zavrne ob zagonu in tudi pozneje takšne zahteve ne pošlje. Če je prehod dosegljiv pod potjo (https://streznik/podatki), odjemalec sam doda zaključno poševnico |
ApiKeyEnvironmentVariable | WKL_GATEWAY_API_KEY | ni prazno | Ime spremenljivke okolja, ki hrani ključ |
ApiKeyHeader | X-Api-Key | ni prazno | Glava za ključ; ujemati se mora z nastavitvijo prehoda Gateway:Security:ApiKeyHeader |
CorrelationHeader | X-Request-Id | ni prazno | Glava za korelacijski identifikator; ujemati se mora z glavo, ki jo bere prehod (tam je privzeto prav tako X-Request-Id), sicer prehod dodeli lasten identifikator |
ReadTimeout | 15 s | večje od nič, največ 5 min | Časovna omejitev pri branju (ReadAsync) |
WriteTimeout | 30 s | večje od nič, največ 5 min | Časovna omejitev pri klicu procedure (InvokeAsync). Ime govori o pisanju, ker je klic procedure pot, po kateri odjemalec piše; velja pa za vsak klic, tudi za proceduro, ki samo bere |
MaxResponseBytes | 32 MiB | večje od nič | Največji odgovor, ki ga odjemalec prebere; večji se konča z LimitExceeded, če prehod dolžino navede vnaprej; sicer se branje pri meji prekine in konča z Unavailable |
MaxUrlLength | 2.000 | ni negativno | Najdaljši naslov, s katerim se pošlje bralna zahteva. Daljša se pošlje kot POST …/$query z možnostmi v telesu; z 0 se tako pošlje vsaka bralna zahteva. Privzeta vrednost sledi najnižji razširjeni omejitvi (IIS privzeto sprejme poizvedbeni niz z največ 2.048 bajti), ker odjemalec ne ve, kateri gostitelj je pred prehodom |
Časovni omejitvi odjemalca in prehoda. Prehod stavek prekine po svoji časovni omejitvi
(privzeto 30 s) in javi TimedOut. Če je časovna omejitev odjemalca krajša – pri branju je privzeto
taka –, odjemalec prej neha čakati in javi Unavailable; stavek se v prehodu izvaja naprej, dokler se ne
konča ali ni prekinjen. Če pričakujete dolge bralne zahteve, nastavite ReadTimeout nekoliko nad
časovno omejitev prehoda.
Sam ključ ni nastavitev. Nastavi se samo ime spremenljivke okolja; vrednost se prebere ob vsaki zahtevi in se nikjer ne shrani. Ključ v konfiguracijski datoteki bi se znašel v repozitoriju, v sliki vsebnika in v vsaki varnostni kopiji obojega.
Od kod ga dobite. Paket Wkl.Data.Gateway.Client dobite skupaj s podatkovnim prehodom iz vira
paketov svojega ponudnika; na nuget.org ga ni. Kot odvisnost s seboj prinese paket specifikacije vmesnika
Wkl.Data.Gateway.Contracts 0.6.0; oba spadata v isti vir paketov. Ta
dokumentacija opisuje odjemalca skupaj s podatkovnim prehodom s specifikacijo vmesnika 0.6.0. Starejši prehod branje in
klicanje obravnava enako; kar prinesejo poznejše različice specifikacije vmesnika, v tem primeru manjka (glejte
Spremembe).