ради любви ко мне, я не могу понять, почему это происходит. когда я отправляю сообщение с base64, я вижу видео, и оно воспроизводится нормально, однако, когда я получаю base64, я не вижу видео. Он просто показывает значок разорванной ссылки в середине.
html раздел:
<video controls preload="auto" class="video-style">
<source type="video/mp4" [src]="(message.data.base64) | safe" />
</video>
Безопасный канал
import { Pipe, PipeTransform } from '@angular/core';
import { DomSanitizer, SafeUrl } from '@angular/platform-browser';
@Pipe({
name: 'safe',
})
export class SafePipe implements PipeTransform {
private sanitizer: DomSanitizer;
constructor(sanitizer: DomSanitizer) {
this.sanitizer = sanitizer;
}
transform(value: string): SafeUrl {
return this.sanitizer.bypassSecurityTrustUrl(value);
}
}
, а затем сообщение.data.base64 === "data:video/mp4;charset=utf-8;base64,iVBORw0KGgoAAA…b2z7S/NR4vPp0+njq+gEgAr7mfb3/JQAAAABJRU5ErkJggg=="
Я пробовал с включенной и исключенной кодировкой без разницы. Мне нужен Dom Sanatizer, иначе Angular санирует его.
Буду признателен за любую помощь.