我正在尝试使用嵌入标签并为 src 属性提供动态 url
<embed src="{{mediaUrl}}" type="{{mimeType}}" />
但是当页面打开时我得到
<embed src="unsafe:abc/def.mp4" type="video/mp4" />
- 我更改了 CSP 的权限,包括 media-src、child-src 等
- 我授予了完全权限(*)
- 我删除了所有权限
- 最后,我完全删除了“ember-cli-content-security-policy”,即使无法避免前置的 unsafe: 。
删除“ember-cli-content-security-policy”但是不再阻止该网址,但该网址仍然以不安全开头,因此视频未加载
我还尝试过什么:
使用了 ember 组件,其标签为 embed 和 src,类型为属性绑定(bind),并使用了 html.safestring。结果:不安全:仍然在前面
在渲染组件后将 url 添加到 src 属性(即使不安全,也没有显示视频:没有前置,因为我相信嵌入的 src 标记无法更改)
在组件被撕裂后添加了整个组件,现在它可以工作了。
但这不是我想要的,我希望它成为模板的一部分而不是动态插入
最佳答案
我遇到了同样的问题,我使用这个助手解决了它:
// app/helpers/safe-string.js
import Ember from 'ember';
export function safeString(value) {
return Ember.String.htmlSafe(value)
}
export default Ember.Helper.helper(safeString);
您现在可以执行以下操作:
<embed src="{{safe-string mediaUrl}}" type="{{mimeType}}" />
关于javascript - 嵌入标签 src 属性前缀不安全 : in ember js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39499688/