আপডেট ভি 8
নীচে উত্তরগুলি কাজ করে তবে আপনার আবেদনটি এক্সএসএস সুরক্ষা ঝুঁকিতে প্রকাশ করে! । পরিবর্তে ব্যবহার করার পরিবর্তে this.sanitizer.bypassSecurityTrustResourceUrl(url)
, এটি ব্যবহার করার পরামর্শ দেওয়া হয়this.sanitizer.sanitize(SecurityContext.URL, url)
হালনাগাদ
জন্য RC.6 ^ সংস্করণটি যদি ব্যবহারে DomSanitizer
Plunker
এবং একটি ভাল বিকল্পটি এর জন্য খাঁটি পাইপ ব্যবহার করছে:
import { Pipe, PipeTransform } from '@angular/core';
import { DomSanitizer} from '@angular/platform-browser';
@Pipe({ name: 'safe' })
export class SafePipe implements PipeTransform {
constructor(private sanitizer: DomSanitizer) {}
transform(url) {
return this.sanitizer.bypassSecurityTrustResourceUrl(url);
}
}
আপনার নতুন অ্যাড মনে রাখবেন SafePipe
থেকে declarations
AppModule অ্যারে। ( ডকুমেন্টেশনে যেমন দেখা যায় )
@NgModule({
declarations : [
...
SafePipe
],
})
এইচটিএমএল
<iframe width="100%" height="300" [src]="url | safe"></iframe>
Plunker
আপনি যদি embed
ট্যাগ ব্যবহার করেন তবে এটি আপনার জন্য আকর্ষণীয় হতে পারে:
পুরানো সংস্করণ আরসি .৫
আপনি এর DomSanitizationService
মতো উপার্জন করতে পারেন :
export class YourComponent {
url: SafeResourceUrl;
constructor(sanitizer: DomSanitizationService) {
this.url = sanitizer.bypassSecurityTrustResourceUrl('your url');
}
}
এবং তারপরে url
আপনার টেম্পলেটটিতে আবদ্ধ হন :
<iframe width="100%" height="300" [src]="url"></iframe>
নিম্নলিখিত আমদানি যুক্ত করতে ভুলবেন না:
import { SafeResourceUrl, DomSanitizationService } from '@angular/platform-browser';
প্লাঙ্কার নমুনা