Jena 4.3+ SPARQL ক্লায়েন্টৰ বাবে প্ৰক্সী প্ৰমাণীকৰণ
আধুনিক Jena অনুসন্ধান সম্পাদনে ব্যৱহাৰ কৰা JDK HTTP ক্লায়েন্টত এটা প্ৰক্সী নিৰ্বাচক আৰু প্ৰমাণক সংযুক্ত কৰক।
Jena 4.3 ত আৰম্ভ হোৱা Jena ৰ JDK-ভিত্তিক HTTP স্তৰত, অনুসন্ধান নিৰ্মাতাক দিয়া transport টো বিন্যাস কৰক। SPARQL এণ্ডপইণ্টৰ পাছৱৰ্ড আৰু প্ৰক্সীৰ পাছৱৰ্ড বেলেগ বেলেগ যন্ত্ৰই অনুৰোধ কৰিব পাৰে।
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();এই অংশই এটা অনুসন্ধান সম্পাদন নিৰ্মাণ কৰে। endpointUrl হৈছে প্ৰকৃত SPARQL সেৱাৰ URL; proxyAuthenticator হৈছে এপ্লিকেশ্বনে যোগান ধৰা java.net.Authenticator। এপ্লিকেশ্বনৰ স্বাভাৱিক অনুসন্ধান জীৱনচক্ৰৰ জৰিয়তে অনুসন্ধান সম্পাদনটো চলাওক আৰু বন্ধ কৰক।
সেই প্ৰমাণকৰ getPasswordAuthentication পদ্ধতিত, প্ৰক্সীৰ PasswordAuthentication কেৱল তেতিয়া ঘূৰাই দিয়ক যেতিয়া getRequestorType() == RequestorType.PROXY আৰু যেতিয়া অনুৰোধ কৰা হ'ষ্ট আৰু পৰ্টে বিন্যাস কৰা মধ্যৱৰ্তীৰ সৈতে মিলে। অসম্পৰ্কিত প্ৰত্যাহ্বানৰ বাবে null ঘূৰাই দিয়ক। এই বস্তুটো ক্লায়েন্টত সংযুক্ত কৰি ৰাখিলে নিৰ্বাচনটো সেই ক্লায়েন্টতে সীমিত থাকে।
প্ৰক্সীয়ে কি বিচাৰিছে পঢ়ক
407 প্ৰতিক্ৰিয়াই এটা প্ৰক্সী প্ৰমাণীকৰণ প্ৰত্যাহ্বান সূচায়। ইয়াৰ Proxy-Authenticate হেডাৰে আগবঢ়োৱা স্কীমবোৰ জনায়; কেৱল স্থিতিয়ে Basic ক NTLM বা অন্য স্কীমৰ পৰা পৃথক নকৰে।
সেই প্ৰস্তাৱটো স্থাপিত JDK ক্লায়েন্টৰ সামৰ্থ্য আৰু প্ৰমাণীকৰণ নীতিত মিলাওক। ব্যৱহাৰকাৰীনাম আৰু পাছৱৰ্ড যোগান ধৰিলে অসমৰ্থিত স্কীম যোগ নহয়। HTTPS লক্ষ্যৰ বাবে JDK ৰ jdk.http.auth.tunneling.disabledSchemes নীতিও পৰীক্ষা কৰক; সাধাৰণ HTTP প্ৰক্সীৰ বাবে সুকীয়া disabledSchemes ছেটিং আছে। CONNECT ৰ বাবে JDK ৰ Basic প্ৰমাণীকৰণৰ পূৰ্বনিৰ্ধাৰিত মান এনে এটা নীতি পৰীক্ষা।
Apache HttpClient আৰু SimpleNTAuthenticator ব্যৱহাৰ কৰা ঐতিহাসিক Jena উদাহৰণবোৰ পুৰণি transport প্ৰজন্মৰ। যদি কৰ্পৰেট প্ৰক্সীয়ে বৰ্তমানৰ transport ত উপলব্ধ নোহোৱা প্ৰমাণীকৰণ ব্যৱস্থা বিচাৰে, তেন্তে সেই পুৰণি প্ৰমাণীকৰণ বস্তুবোৰ আধুনিক নিৰ্মাতালৈ সলনি কৰিবলৈ চেষ্টা নকৰি নেটৱৰ্ক প্ৰশাসকৰ সৈতে সমৰ্থিত সংযুক্তিৰ ব্যৱস্থা কৰক।