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, તે નક્કી કરો, પછી વધારાના સ્રોતો અલગથી અનુસરો.

સંબંધિત લેખો