前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C# httpwebrequest post 传输百分号‘%’

C# httpwebrequest post 传输百分号‘%’

作者头像
跟着阿笨一起玩NET
发布2018-09-20 15:20:53
2.1K0
发布2018-09-20 15:20:53
举报
文章被收录于专栏:跟着阿笨一起玩NET

转载:http://blog.csdn.net/qqstrive/article/details/8229601

通过webrequest的post传输数据的时候,如果url里面的参数带有‘%’,那么在取地址栏的参数的时候会出现空指针,或者是错误。

string URL = http://127.0.0.1/file.do ;

string postdata = "domethod=list&content=30%";

解决办法:

对于postdata参数中的content 进行unciond或者是base64编码,再进行传输到服务端,服务端接收后再进行解码操作即可。

base64编码%变为JQ==

unicode编码 %变为\u0025

首先先来说一下为什么要urlencode 

代码语言:javascript
复制
http://blog.csdn.net/henulwj/article/details/7916557
1.为了正常获取值 
字符 特殊字符的含义 URL编码 
# 用来标志特定的文档位置 %23 
% 对特殊字符进行编码 %25 
& 分隔不同的变量值对 %26 
+ 在变量值中表示空格 %2B 
\ 表示目录路径 %2F
= 用来连接键和值 %3D 
? 表示查询字符串的开始 %3F

当url中含有以上列表中的一些字符时就无法准确的接收其中的值。

2.如果要传递的参数不想让人一眼就看出来的话,也可以urlencode一下,url就会变成一段编码后的长长的字符串。

至于urldecode就没什么好说的了  就是把urlecode编码后的url字符串再解码成原来的url  你encode了  肯定需要反向操作一下,即decode

注:.net下面是用HttpUtility.UrlEncode()和HttpUtility.UrlDecode()  来实现url的encode和decode操作的

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-04-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档