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، پھر کسی بھی اضافی وسیلے کو الگ سے ٹریس کریں۔

متعلقہ مضامین