使用angularjs过滤器来解析url是安全的
use an angularjs filter to parse an url is safe?
在web应用程序中,我的客户端(基于angularjs)从web服务接收json数据。Json可以包含一个带有某些url的文本字段;例如:
blah blah ... http://www.example.com blah blah blah ...
我需要将这个链接呈现为html,所以我需要用html标记替换url。为了弄清楚,在一篇要旨帖子之后,我试着做了如下过滤器:
botino.filter('parseUrl', function($sce) {
replacePattern1 = /('b(https?|ftp):'/'/[-A-Z0-9+&@#'/%?=~_|!:,.;]*[-A-Z0-9+&@#'/%=~_|])/gim;
return function(text, target, otherProp) {
angular.forEach(text.match(replacePattern1), function(url) {
text = text.replace(replacePattern1, '<a href="$1" target="_blank">$1</a>');
});
text = $sce.trustAsHtml(text);
return text;
};
});
这样,在html页面上我使用:
<span ng-bind-html="tweet.text | parseUrl"></span>
工作也是如此。
我的问题是这种实施的安全性如何?有人可以恶意使用这个吗?也许有人能给我一个更好的方法来解决这个问题?
如果解析发生在后端,我应该更加关心。如果这种情况发生在javascript方面,我应该信任那些共享url的人。
相关文章:
- createObjectURL blob url在Firefox中不安全
- 我的URL重定向安全吗
- Angular-使字符串对URL安全-路由是否正确
- Web套接字安全URL加密
- 每当我试图将简单的图像源转换为数据URL时,就会出现安全错误异常
- 角度相加“;“不安全”;在尝试下载文件时将其转换为url
- Chrome扩展:不安全的JavaScript尝试访问具有URL的框架域、协议和端口必须匹配
- 重写图像 URL 以安全投放
- 不安全的 JavaScript 尝试启动带有 URL 的框架的导航更改 - 如何尝试捕获它
- Django 和 Ajax Push Engine (APE):不安全的 JavaScript 尝试使用 URL 访问框
- 不安全的 JavaScript 尝试使用 URL(同一域!)访问框架
- Yesod:在 AJAX 调用中使用类型安全的 URL
- 拒绝执行 JavaScript URL,因为它违反了以下内容安全策略指令:
- CasperJS和'不安全的JavaScript尝试访问URL为'的帧;错误
- "不安全的JavaScript尝试访问URL为..的帧"使用本地文件
- 如何通过XMLHttpRequest确保对Java Servlet的Javascript调用的安全,从而在手动将url输
- url安全的文件名安全的字符串
- 我应该使用哪些功能来url安全搜索重定向
- 使用regex验证字符串是否URL安全
- asp经典正则表达式:字符串到URL安全