使用SafeUrlAssembler时,%40不断更改为%2540

时间:2019-01-08 20:39:35

标签: angular typescript

我在Angular 5中使用safe-url-assembler。

我正在将电子邮件地址传递给该汇编器,该汇编器将调用API。

const endpoint = SafeUrlAssembler(environment.baseUrl.api)
  .template(ApiEndpoints.save)
  .param("emailID", email)
  .toString();
console.log(endpoint);
return this.http.put<any>(endpoint, httpOptions);

问题是,当我将电子邮件传递到URL时,它的显示方式类似于“ myemail%2540gmail.com”,而不是“ myemail%40gmail.com”

有人使用安全的网址汇编程序解决了此问题吗?

1 个答案:

答案 0 :(得分:1)

SafeUrlAssembler不知道该字符串已被“保护”。因此,已转义的'@'('%40')被读取为要发送的字符串。由于'%'不安全,因此已转义为'%25'。

不要传递已经转义的电子邮件地址(“ myemail%40gmail.com”),而是使用'@'传递常规电子邮件地址。 (“ myemail@gmail.com”)