ଡାଉନଲୋଡ୍ ହୋଇଥିବା XML କୁ ସ୍ଟ୍ରିମ୍ ଭାବରେ .NET XmlReader କୁ ଦିଅନ୍ତୁ
ମୂଳ URL କୁ ପୁନର୍ବାର ଆଣିବାକୁ କହିବା ପରିବର୍ତ୍ତେ ପ୍ରକ୍ସି ହୋଇଥିବା ପ୍ରତିକ୍ରିୟା ସ୍ଟ୍ରିମକୁ XML ପାର୍ସରକୁ ଦିଅନ୍ତୁ।
HTTP କ୍ଲାଏଣ୍ଟ ସଠିକ୍ ପ୍ରକ୍ସି ମାଧ୍ୟମରେ XML ଡାଉନଲୋଡ୍ କରେ। ପରବର୍ତ୍ତୀ ଧାଡ଼ି ମୂଳ URL ରୁ ଏକ XML ପାଠକ ସୃଷ୍ଟି କରେ। ସେହି ଧାଡ଼ି ଡାଉନଲୋଡ୍ ହୋଇଥିବା ଡାଟା ପାର୍ସ କରିବା ପରିବର୍ତ୍ତେ ଆଉ ଏକ ଆହରଣ ଆରମ୍ଭ କରେ।
ପୂର୍ବରୁ ଉଦ୍ଦିଷ୍ଟ ମାର୍ଗ ସହିତ ବିନ୍ୟାସିତ କ୍ଲାଏଣ୍ଟ ପାଇଁ, ତାହାର ପ୍ରତିକ୍ରିୟା ସ୍ଟ୍ରିମ ପାର୍ସରକୁ ଦିଅନ୍ତୁ:
using var response = await client.GetAsync(documentUri);
response.EnsureSuccessStatusCode();
using var stream = await response.Content.ReadAsStreamAsync();
var settings = new XmlReaderSettings
{
DtdProcessing = DtdProcessing.Prohibit,
XmlResolver = null
};
using var reader = XmlReader.Create(stream, settings, documentUri.AbsoluteUri);
var document = XDocument.Load(reader);
ପ୍ରାସଙ୍ଗିକ ନାମସ୍ଥାନଗୁଡ଼ିକ ହେଉଛି System.Xml ଏବଂ System.Xml.Linq। ଉଦାହରଣଟି DTD ପ୍ରକ୍ରିୟାକରଣ ଏବଂ ବାହ୍ୟ ସମାଧାନକୁ ଉଦ୍ଦେଶ୍ୟମୂଳକ ଭାବରେ ଅକ୍ଷମ କରେ; ଏହା ସେହି କ୍ଲାଏଣ୍ଟ ମାଧ୍ୟମରେ ମନଇଚ୍ଛା ବାହ୍ୟ ସଂସ୍ଥା ଆଣିବାର ଉପାୟ ନୁହେଁ।
ମୂଳ URI ଦଲିଲର ସ୍ଥାନ ମେଟାଡାଟା ସଂରକ୍ଷଣ କରେ। ଯଦି ଅନୁମୋଦିତ ପାର୍ସିଂ କିମ୍ବା ବୈଧତା କାର୍ଯ୍ୟପ୍ରବାହ ବାହ୍ୟ ସ୍କିମା କିମ୍ବା ଅନ୍ୟ ନିର୍ଭରତା ଆଣେ, ସେହି ଆହରଣଗୁଡ଼ିକର ନିଜସ୍ୱ ସ୍ପଷ୍ଟ ରିଜୋଲଭର ଏବଂ ରାଉଟିଂ ଡିଜାଇନ୍ ଆବଶ୍ୟକ।
ପ୍ରଥମ, ସଫଳ କ୍ଲାଏଣ୍ଟରେ ପାସୱାର୍ଡ ବଦଳାଇ ଦ୍ୱିତୀୟ ନେଟୱାର୍କ ବିଫଳତାର ନିଦାନ କରନ୍ତୁ ନାହିଁ। ପାର୍ସର ସ୍ଟ୍ରିମ ପାଇଛି କି URL, ତାହା ନିର୍ଣ୍ଣୟ କରନ୍ତୁ, ତାପରେ ଯେକୌଣସି ଅତିରିକ୍ତ ସମ୍ବଳକୁ ଅଲଗା ଭାବରେ ଅନୁସରଣ କରନ୍ତୁ।