gpt4 book ai didi

asp.net-mvc - 使用 "tel:"标签时,出现 "A potentially dangerous Request.Path value was detected from the client (:). "错误

转载 作者:行者123 更新时间:2023-11-28 01:39:11 24 4
gpt4 key购买 nike

我一直在我的 ELMAH 日志中遇到这个错误。错误状态,

System.Web.HttpException (0x80004005): A potentially dangerous Request.Path value was detected from the client (:).

在查看日志中的堆栈跟踪后,似乎发生了错误,因为我正在使用

<a href="tel:8888888888">8888888888888</a>标签。

这不是电话号码的有效 HTML5 实现吗?我该如何解决这个问题?

那么“whatsapp:”标签呢? ( see related post )

最佳答案

看起来你有一个愚蠢的浏览器正在向服务器请求 tel:单击 anchor 时的 URI。 tel: URI 应使客户端机器调用本地电话设备,并且服务器正确警告 URI 是向服务器请求的。这可能是一个历史性的攻击媒介。

因此,在某种程度上,这可能是一个可忽略的错误。

也可能是浏览器试图变得“聪明”,因为没有正确指定电话号码。根据RFC 3966电话号码必须是有效的 E.164 address或格式正确的“本地地址”和 888-888-8888两者都不是。如果您指的是北美电话,那么地址应该是 +1-888-888-8888 (破折号是可选的,加号不是,1 是国家代码)。如果您试图表示本地地址,图灵可能会帮助您理解规范;注意,RFC 说本地地址 SHOULD NOT被使用。

如果智能/愚蠢的浏览器在无法解析 URI 的情况下将 URI 作为新请求传回给服务器,那么它就太聪明/愚蠢了,应该忽略它。

所以,在另一个层面上,也许你应该放一个 +<country code>在你的 href。如果一个浏览器以这种方式被破坏,另一个将是。最好在日志中返回以查看在 tel: 之前不久是否由同一请求者请求具有格式错误的 URI 的页面。请求返回到服务器。如果能得到请求者的UserAgent就好了。最好看看这是渗透旧服务器的尝试还是使用 IE 5 或 sumptin 的最终用户的无辜行为。

关于asp.net-mvc - 使用 "tel:"标签时,出现 "A potentially dangerous Request.Path value was detected from the client (:). "错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27008071/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com