首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UrlEncoding -我应该使用哪种编码?

UrlEncoding -我应该使用哪种编码?
EN

Stack Overflow用户
提问于 2011-01-05 15:41:30
回答 2查看 513关注 0票数 2

使用HttpUtility.UrlEncode并通过URL传递,接收页面将变量视为:

全新-> brand+new

Airconaire+Ltd -> Airconaire+Ltd

你能看到第一个和第二个--都是--在它们开始时没有的地方,它们中有一个+吗?我假设这与编码有关(特别是RFC3986或RFC2396),但是如何解决这个问题呢?

我认为理想情况下,空格应该转换为%20,但这是最好的前进方式吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-05 15:46:44

尝试使用HttpUtility.UrlPathEncode而不是URLEncode。

票数 2
EN

Stack Overflow用户

发布于 2011-01-05 15:54:06

UrlEncode()方法可用于对整个URL进行编码,包括查询字符串值。如果在HTTP流中传递空白和标点符号等字符,它们可能会在接收端被误解。URL编码将URL中不允许的字符转换为字符实体等效项;URL解码将反转编码。例如,当字符<和>嵌入到要在URL中传输的文本块中时,它们被编码为%3c和%3e。

您可以使用UrlEncode()方法或UrlPathEncode()方法对URL进行编码。然而,这些方法返回不同的结果。UrlEncode()方法将每个空格字符转换为加号字符(+)。UrlPathEncode()方法将每个空格字符转换为字符串"%20",该字符串以十六进制表示法表示空格。在对URL的路径部分进行编码时,请使用UrlPathEncode()方法,以确保解码后的URL一致,而不管哪个平台或浏览器执行解码。

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4605942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档