Starpniekservera 407 kļūdas no ārējiem DTD un XML resursiem
Izsekojiet negaidītam 407, kad dokumentu pārveido uz ārējiem DTD, shēmām vai citiem resursiem, ko atver parsētājs.
Vietējs dokuments joprojām var izraisīt 407 pārveides laikā. Tā XML var nosaukt DTD, shēmu vai entītiju, un atveidotājs var iegūt stilus vai attēlus. Neveiksmīgais klients var būt šī parsētāja iekšienē pēc tam, kad sākotnējā lejupielāde ir pabeigta.
Saglabājiet izņēmuma steku un pieprasīto URI, pēc tam salīdziniet tos ar ievades deklarācijām vai resursu atsaucēm. DTD pieprasījums uz standarta saimnieku ir cita darbība nekā lapas pieprasījums. HTML uz PDF pārveide var arī neizdoties, iegūstot attālinātos resursus.
Ja .NET XmlReader ievades līgums aizliedz DTD un ārēju atrisinājumu, izmantojiet:
var settings = new XmlReaderSettings
{
DtdProcessing = DtdProcessing.Prohibit,
XmlResolver = null
};Nododiet šos iestatījumus komponentam, kas faktiski parsē dokumentu. DtdProcessing izvēlas, kā apstrādāt DTD; XmlResolver kontrolē ārēju piekļuvi. Prohibit noraida dokumentu ar DTD—tas neizņem deklarāciju. Ja darbplūsmai tāda ir nepieciešama, izvēlieties apstiprinātu vietēju atrisinājumu vai skaidri maršrutētu resolver.
Turiet noklusējumus piesaistītus API/izpildlaika videi. XmlReaderSettings pēc noklusējuma izmanto Prohibit, un tā noklusējuma resolver kopš .NET Framework 4.5.2 ir mainīts uz null. Trešās puses pārveidotājs var tos ignorēt vai izmantot citu parsētāju.
XHTML deklarācijas maiņa uz HTML doctype var ietekmēt vienu pārveidotāju, bet tā starpniekserveri nekonfigurē. Nosakiet nepieciešamos resursus un to ielādes politiku; autentifikācija sākotnējās lapas klientā neautentificē šo otro klientu.