gpt4 book ai didi

c# - 如何转义url编码?

转载 作者:可可西里 更新时间:2023-11-01 08:36:30 27 4
gpt4 key购买 nike

我正在创建一个链接,该链接创建包含带有 URL 参数的链接的 URL 参数。问题是我有这样的链接

http://mydomain/_layouts/test/MyLinksEdit.aspx?auto=true&source=
http://vtss-sp2010hh:8088/AdminReports/helloworld.aspx?pdfid=193
&url=http://vtss-sp2010hh:8088/AdminReports/helloworld.aspx?pdfid=193%26pdfname=5.6%20Upgrade
&title=5.6 Upgrade

此链接会转到一个书签添加页面,它会在其中读取这些参数。

auto是否读取以下参数

source 添加或取消后去哪里

url为书签链接

title是书签的名字

urltitle 的值被输入到 2 个字段中。然后用户必须单击保存取消。问题是当书签页面将值输入到字段中时,它将对其进行解码。然后,如果您尝试保存,它不会让您保存,因为 url 值中的 pdfname 值中有一个空格。它需要链接没有任何空格。所以基本上,我希望它在字段中输入后仍然是 %20 而不是空格。

sourceautotitle 没有问题,只有 url 问题。 .

有办法解决吗?就像我可以用于 %20 的特殊转义字符一样?

注意:我不能修改书签页。

我正在使用 c#/asp.net 创建链接并转到它。

谢谢

最佳答案

从 .NET Framework 4.5 开始,您可以使用 WebUtility.UrlEncode

它位于 System.dll 中,因此不需要任何额外的引用。

Uri.EscapeUriString 不同,它正确地转义了 URL 的字符

它对字符串的长度没有任何限制,不像Uri.EscapeDataString,所以它可以用于POST请求

 System.Net.WebUtility.UrlEncode(urlText)

另一种选择是

 System.Uri.EscapeDataString() 

关于c# - 如何转义url编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17241677/

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