gpt4 book ai didi

c# - 如何从 href 获取 QueryString?

转载 作者:行者123 更新时间:2023-11-30 15:10:38 25 4
gpt4 key购买 nike

我正试图阻止 XSS 攻击,所以我使用 html 敏捷包来创建我的白名单,并使用 Microsoft 反跨站点脚本库来处理其余部分。

现在我正在考虑对所有 html href 进行编码。我得到一大串可以包含 href 的 html 代码。 Accours to MS Library 他们有一个 URL 编码,但如果你对整个 URl 进行编码,那么它就不能使用。所以在这个例子中他们只是对查询字符串进行编码

UrlEncode Untrusted input is used in a URL (such as a value in a querystring) Click Here!

http://msdn.microsoft.com/en-us/library/aa973813.aspx

所以现在我的问题是如何解析 href 并找到查询字符串。它总是只是“?”然后查询字符串或者它可以有空格并以不同的方式编写吗?

编辑

这个 url 不是我写的,而是共享它们的用户写的。所以这就是为什么我需要一种方法来确保我获得所有查询字符串而不仅仅是有效格式的查询字符串。如果它可以使用无效格式,我也必须捕获这些。黑客不会关心它是否是有效格式,只要它仍然可以为所欲为。

最佳答案

我相信 始终是 ? 之后的部分但您可以轻松地为此使用 Uri 类:

Uri uri = new Uri("http://foo.com/page.html?query");
string query = uri.Query;

那将包括 ?本身。当然,您也可以获取其他位,这可能很方便。

关于c# - 如何从 href 获取 QueryString?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3077069/

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