如何删除 localhost:4200 url 附加在角度 <a> 标记中的 [href] 属性中
Posted
技术标签:
【中文标题】如何删除 localhost:4200 url 附加在角度 <a> 标记中的 [href] 属性中【英文标题】:How to remove localhost:4200 url appending in [href] attribute in <a> tag in angular 【发布时间】:2021-07-14 06:17:24 【问题描述】:以下是 html:
<a [href]= "message.messagelinkHere ? sanitize(message.messagelinkHere) : message.messagelink"
在ts文件中
import DomSanitizer from '@angular/platform-browser';
constructor(public sanitizer:DomSanitizer)
sanitize(url:string)
let sanitizedUrl;
sanitizedUrl = this.sanitizer.bypassSecurityTrustResourceUrl(url)
console.log(sanitizedUrl) //SafeValue must use [property]=binding:/(https://urldefense.proofpoint.com/v2/url?u=https-3A__nam11.safelinks)
return sanitizedUrl;
尝试点击附加了 http://localhost:4200/https://urldefense.proofpoint.com/v2/url?u=https-3A__nam11.safelinks 的 URL 并且链接正在打开本地应用程序,而不是外部网站。
请告诉我如何删除附加在 href 中的 localhost
【问题讨论】:
【参考方案1】:这是我没有使用 Dom sanitizer 的解决方案,而是直接使用字符串插值来标记 URL。
https://stackblitz.com/edit/angular-ivy-xe5gzz?file=src%2Fapp%2Fapp.component.html
【讨论】:
我也尝试过不使用消毒剂,urldefense.proofpoint.com/v2/…) 您是否看到我发布的示例链接尝试将您的 URL 放在那里。 如果我直接使用它可以工作,但如果我添加它不会工作的条件它说不安全,我需要根据我需要打开不同的链接添加条件,如上所示 如果我们需要在声明为全局的类变量 URL 中使用它,它会起作用,在某些情况下,我会在某些方法执行时获取 URL,直到 URL 不可用,一旦方法被调用并且网址已填,原来是不安全的以上是关于如何删除 localhost:4200 url 附加在角度 <a> 标记中的 [href] 属性中的主要内容,如果未能解决你的问题,请参考以下文章
如何从 angular localhost:4200 调用 spring security azure AD localhost:8080。天蓝色调用中的错误
从 localhost:4200 访问 localhost:8080 的 XMLHttpRequest 已被 CORS 策略阻止
localhost 和 localhost:4200 角度的 CORS 问题