【问题标题】:Vue sanitize a href urlVue清理href url
【发布时间】:2022-08-09 23:53:03
【问题描述】:

所以伙计们,我有一个像Make sure bypassing Vue built-in sanitization is safe here.这样的问题,在vue js中有一个href URL,这是我从我的API获得的URL,然后我尝试使用@braintree/sanitize-url进行消毒,然后把它放在我的Vue.prototype.$sanitize中这个

import { sanitizeUrl } from \"@braintree/sanitize-url\"

Vue.prototype.$sanitize = sanitizeUrl

然后我像这样在我的组件上使用它

data: () => ({
  sanitizeUrl: null
}),
created() {
  // BEFORE SANITIZE : \"https://codepen.io/\"
  // AFTER SANITIZED : \"https://codepen.io/\"

  this.sanitizeUrl = this.$sanitize(this.obj.info.url)
}
<a
  :href=\"sanitizeUrl\"
  target=\"_blank\"
  rel=\"noreferrer noopener nofollow\"
/>

一切都很好,但声纳云仍然检测到此 URL 尚未清理 喜欢Make sure bypassing Vue built-in sanitization is safe here.

如何从我的 API 中清理此 URL?感谢你们

  • 尝试:href=\"$sanitize(sanitizeUrl)\" 并从created 中删除this.$sanitize
  • @XinheWang,谢谢。我试过这种方式,但它仍然有同样的错误
  • @bukandicki 您可以在使用braintree sanitizer 进行消毒之后和之前分享网址吗?只是为了确认它是经过消毒的,以及 url 前后的样子。
  • 当然,我只是更新我的问题@rohin-arka
  • 您是否检查了使用 this.$sanitize(this.obj.info.url) 得到的 beforeafter 的日志?

标签: javascript vue.js


【解决方案1】:

我在 SonarQube 上遇到了同样的问题。有没有关于如何避免它的消息?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-06
    • 2017-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多