බාගත කළ 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 එකක් ලැබුණේද යන්න තහවුරු කර, පසුව අමතර සම්පත් වෙන් වෙන්ව අනුගමනය කරන්න.