angular - 使用 SafeUrlAssembler 时,%40 不断更改为 %2540
问题描述
我在 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”
有人在使用安全 url 汇编器时解决了这个问题吗?
解决方案
SafeUrlAssembler 不知道该字符串已被“保护”。因此,已经转义的 '@' ('%40') 被读取为要发送的字符串。由于 '%' 不安全,它被转义到 '%25'。
不要传入已经转义的电子邮件地址(“myemail%40gmail.com”),而是使用“@”传入常规电子邮件地址。(“myemail@gmail.com”)
推荐阅读
- php - 函数 file_exists 总是返回 false
- angular - 在应用程序运行时将新的“observables”推送到“observables”列表,并使用 combineLatest - Angular 监听更改
- python - 我如何编写一个不和谐的机器人,以便它能够使用 python PIL 发布修改后的 gif 和/或 png 个人资料图片?
- c++ - C++20 通用 Lambda
- python - 如何使用 PyQtGraph 绘制图像上两点之间的水平距离
- jsp - 浏览器参数FilterConfig?=null
- regex - 在字符串中搜索多对字母(Ruby)
- flutter - If 语句更改 QuerySnapshot Flutter 中的图标颜色
- powershell - 如何在 Windows 上正确部署 PowerShell core Zip
- go - 在 go 中列出服务