Տեղական փաստաթուղթը փոխակերպման ընթացքում դեռ կարող է առաջացնել 407։ Նրա XML-ը կարող է նշել DTD, սխեմա կամ էություն, իսկ մատուցիչը կարող է բերել ոճեր կամ պատկերներ։ Ձախողվող հաճախորդը կարող է լինել այդ վերլուծիչի ներսում՝ սկզբնական ներբեռնումն ավարտվելուց հետո։

Պահեք բացառության կույտը և հարցված URI-ն, ապա համադրեք դրանք մուտքային հայտարարագրերի կամ ռեսուրսների հղումների հետ։ Ստանդարտ հոսթին ուղղված DTD հարցումն այլ գործողություն է, քան էջի հարցումը։ HTML-ից PDF փոխակերպումը նույնպես կարող է ձախողվել հեռավոր ռեսուրսներ բերելիս։

.NET XmlReader մուտքի համար, որի պայմանագիրն արգելում է DTD-ներ և արտաքին լուծում, օգտագործեք՝

var settings = new XmlReaderSettings
{
    DtdProcessing = DtdProcessing.Prohibit,
    XmlResolver = null
};

Փոխանցեք այդ կարգավորումները այն բաղադրիչին, որն իրականում վերլուծում է փաստաթուղթը։ DtdProcessing ընտրում է, թե ինչպես վարվել DTD-ի հետ. XmlResolver կառավարում է արտաքին հասանելիությունը։ Prohibit-ը մերժում է DTD ունեցող փաստաթուղթը—այն չի հեռացնում հայտարարագիրը։ Եթե աշխատահոսքը պահանջում է մեկը, ընտրեք հաստատված տեղական լուծում կամ բացահայտ ուղղորդված resolver։

Լռելյայն արժեքները կապեք API/կատարման միջավայրին։ XmlReaderSettings-ը լռելյայն օգտագործում է Prohibit, և դրա լռելյայն resolver-ը .NET Framework 4.5.2-ից սկսած փոխվել է null-ի։ Երրորդ կողմի փոխարկիչը կարող է վերափոխել դրանք կամ օգտագործել այլ վերլուծիչ։

XHTML հայտարարագիրը HTML doctype-ի փոխելը կարող է ազդել մեկ փոխարկիչի վրա, բայց չի կարգավորում նրա փրոքսին։ Սահմանեք անհրաժեշտ ռեսուրսները և դրանց բեռնման քաղաքականությունը. սկզբնական էջի հաճախորդի նույնականացումը չի նույնականացնում այս երկրորդ հաճախորդին։

Առնչվող հոդվածներ