කෙටි පිළිතුර දැනටමත් මෙහි ලබා දී ඇත: <div [innerHTML]="yourHtml">බන්ධනය භාවිතා කරන්න .
කෙසේ වෙතත් මෙහි සඳහන් ඉතිරි උපදෙස් නොමඟ යවන සුළු විය හැකිය. ඔබ එවැනි දේපල සමඟ බැඳී සිටින විට කෝණික තුළ සනීපාරක්ෂක යාන්ත්රණයක් ඇත. කෝණික යනු කැපවූ සනීපාරක්ෂක පුස්තකාලයක් නොවන බැවින්, කිසිදු අවදානමක් නොගැනීම සැක සහිත අන්තර්ගතයන් කෙරෙහි අධික ලෙස බලපායි. උදාහරණයක් ලෙස, එය සියළුම SVG අන්තර්ගතයන් හිස් නූලකට පිරිසිදු කරයි.
ක්රම DomSanitizerසමඟ අන්තර්ගතය ආරක්ෂිත යැයි සලකුණු කිරීම මගින් ඔබේ අන්තර්ගතය "සනීපාරක්ෂාව" කිරීමට ඔබට උපදෙස් ඇසෙනු bypassSecurityTrustXXXඇත. ඒ සඳහා පයිප්ප භාවිතා කිරීමට යෝජනා ද ඇති අතර එම නළය බොහෝ විට හැඳින්වේ safeHtml.
මේ සියල්ල නොමඟ යවන සුළු කරුණක් වන්නේ එය ඇත්ත වශයෙන්ම සනීපාරක්ෂාව මග හැරීම මිස ඔබේ අන්තර්ගතය සනීපාරක්ෂාව නොකිරීමයි. මෙය ආරක්ෂිත කාරණයක් විය හැකිය, මන්ද ඔබ මෙය කවදා හෝ පරිශීලක විසින් සපයන ලද අන්තර්ගතයන් මත හෝ ඔබට විශ්වාස නැති දෙයක් මත සිදු කරන්නේ නම් - ඔබ අනිෂ්ට කේත ප්රහාරයකට විවෘත වේ.
කෝණික විසින් එහි ඇති සනීපාරක්ෂාව මගින් ඔබට අවශ්ය දෙයක් ඉවත් කරන්නේ නම් - එය අක්රීය කිරීම වෙනුවට ඔබට කළ හැකි දෙය නම්, එම කාර්යයේ දී හොඳ පුස්තකාලයක් වෙත සත්ය සනීපාරක්ෂාව පැවරීමයි. උදාහරණයක් ලෙස - DOMPurify.
කෝණික: https://github.com/TinkoffCreditSystems/ng-dompurify සමඟ පහසුවෙන් භාවිතා කළ හැකි වන පරිදි මම ඒ සඳහා රැප් පුස්තකාලයක් සාදා ඇත.
HTML ප්රකාශිත ලෙස සනීපාරක්ෂාව සඳහා නලයක් ද එහි ඇත:
<div [innerHtml]="value | dompurify"></div>
මෙහි යෝජනා කර ඇති පයිප්පවල වෙනස නම් එය සැබවින්ම DOMPurify හරහා සනීපාරක්ෂාව සිදු කරන අතර එම නිසා SVG සඳහා වැඩ කිරීමයි.
මතක තබා ගත යුතු එක් දෙයක් නම් HTML / SVG සනීපාරක්ෂාව සඳහා DOMPurify විශිෂ්ටයි, නමුත් CSS නොවේ. එබැවින් ඔබට CSS හැසිරවීමට Angular හි CSS සනීපාරක්ෂක සැපයුම්කරු සැපයිය හැකිය:
import {NgModule, ɵ_sanitizeStyle} from '@angular/core';
import {SANITIZE_STYLE} from '@tinkoff/ng-dompurify';
@NgModule({
// ...
providers: [
{
provide: SANITIZE_STYLE,
useValue: ɵ_sanitizeStyle,
},
],
// ...
})
export class AppModule {}
එය අභ්යන්තර - හෙන්ස් ɵඋපසර්ගය, නමුත් කෝණික කණ්ඩායම එය ඔවුන්ගේම පැකේජ හරහා මෙන්ම කෙසේ හෝ භාවිතා කරයි. එම පුස්තකාලය කෝණික විශ්ව සහ සේවාදායක පැති ප්රතිනිර්මාණය කිරීමේ පරිසරය සඳහා ද ක්රියා කරයි.