Fíordheimhniú seachfhreastalaí do chliaint SPARQL Jena 4.3+
Ceangail roghnóir agus fíordheimneoir seachfhreastalaí leis an gcliant HTTP JDK a úsáideann forghníomhú ceiste Jena nua-aimseartha.
Don chruach HTTP de chuid Jena atá bunaithe ar JDK, a tugadh isteach i Jena 4.3, cumraigh an t-iompar a chuirtear chuig tógálaí na ceiste. Féadfaidh meaisíní éagsúla focal faire an phointe deiridh SPARQL agus focal faire an tseachfhreastalaí a iarraidh.
import java.net.InetSocketAddress;
import java.net.ProxySelector;
import java.net.http.HttpClient;
import org.apache.jena.sparql.exec.http.QueryExecutionHTTP;
var http = HttpClient.newBuilder()
.proxy(ProxySelector.of(
new InetSocketAddress("proxy.example", 8080)))
.authenticator(proxyAuthenticator)
.build();
var execution = QueryExecutionHTTP.service(endpointUrl)
.httpClient(http)
.query("ASK { ?s ?p ?o }")
.build();Tógann an mhíre seo forghníomhú ceiste. Is é endpointUrl fíor-URL na seirbhíse SPARQL; is java.net.Authenticator é proxyAuthenticator a sholáthraíonn an feidhmchlár. Rith agus dún an forghníomhú ceiste trí ghnáthshaolré ceisteanna an fheidhmchláir.
I modh getPasswordAuthentication an fhíordheimneora sin, ní thugann tú PasswordAuthentication an tseachfhreastalaí ar ais ach amháin nuair a bhíonn getRequestorType() == RequestorType.PROXY agus nuair a réitíonn an t-óstach agus an port a iarrann leis an idirghabhálaí cumraithe. Tabhair null ar ais do dhúshláin neamhghaolmhara. Má cheanglaítear an réad seo leis an gcliant, fanann an rogha go háitiúil sa chliant sin.
Léigh cad atá á iarraidh ag an seachfhreastalaí
Léiríonn freagra 407 dúshlán fíordheimhnithe seachfhreastalaí. Insíonn a cheanntásc Proxy-Authenticate na scéimeanna a thairgtear; ní dhéanann an stádas ina aonar idirdhealú idir Basic agus NTLM ná scéim eile.
Cuir an tairiscint sin i gcomparáid le cumais agus le beartas fíordheimhnithe an chliaint JDK atá suite. Ní chuireann soláthar ainm úsáideora agus focal faire scéim neamhthacaíochta leis. Do chinn scríbe HTTPS, scrúdaigh beartas jdk.http.auth.tunneling.disabledSchemes an JDK freisin; tá socruithe disabledSchemes ar leith ag gnáthsheachfhreastal HTTP. Tá réamhshocruithe JDK d'fhíordheimhniú Basic le haghaidh CONNECT ar cheann de na seiceálacha beartais sin.
Baineann samplaí stairiúla Jena le Apache HttpClient agus SimpleNTAuthenticator le glúin iompair níos sine. Má éilíonn seachfhreastalaí corparáideach meicníocht fhíordheimhnithe nach bhfuil ar fáil san iompar reatha, socraigh comhtháthú tacaíochta leis an riarthóir líonra seachas iarracht a dhéanamh na seanréada fíordheimhnithe sin a chur isteach sa tógálaí nua-aimseartha.