Greške 407 proksija iz spoljnih DTD-ova i XML resursa
Pratite neočekivanu grešku 407 tokom pretvaranja dokumenta u spoljne DTD-ove, šeme ili druge resurse koje otvara parser.
Lokalni dokument i dalje može izazvati 407 tokom pretvaranja. Njegov XML može navesti DTD, šemu ili entitet, a renderer može dohvatiti stilove ili slike. Klijent koji zakaže može biti unutar tog parsera, nakon što je izvorno preuzimanje završeno.
Sačuvajte stek izuzetka i traženi URI, pa ih uporedite sa deklaracijama ulaza ili referencama resursa. Zahtev za DTD prema standardnom hostu druga je operacija od zahteva za stranicu. Pretvaranje HTML-a u PDF takođe može zakazati prilikom dohvatanja udaljenih resursa.
Za .NET XmlReader ulaz čiji ugovor zabranjuje DTD-ove i spoljno razrešavanje, koristite:
var settings = new XmlReaderSettings
{
DtdProcessing = DtdProcessing.Prohibit,
XmlResolver = null
};Prosledite te postavke komponenti koja zapravo parsira dokument. DtdProcessing bira kako se DTD obrađuje; XmlResolver kontroliše spoljni pristup. Prohibit odbija dokument sa DTD-om—ne uklanja deklaraciju. Ako radni tok zahteva jednu, izaberite odobreno lokalno razrešavanje ili eksplicitno usmereni resolver.
Držite podrazumevane vrednosti vezane za API/runtime. XmlReaderSettings podrazumevano koristi Prohibit, a njegov podrazumevani resolver promenjen je u null počevši od .NET Framework 4.5.2. Konverter treće strane može ih nadjačati ili koristiti drugi parser.
Promena XHTML deklaracije u HTML doctype može uticati na jedan konverter, ali ne konfiguriše njegov proksi. Utvrdite potrebne resurse i njihovu politiku učitavanja; autentifikacija na klijentu početne stranice ne autentifikuje ovaj drugi klijent.