Http Post GBK编码参数C#代码示例
接受请求的网站是GBK编码,Http Post请求参数也需要用GBK编码,以下是一段代码示例
String sResult = "";
Encoding myEncoding = Encoding.GetEncoding("GBK");
string param = HttpUtility.UrlEncode("merId", myEncoding) + "=" + HttpUtility.UrlEncode(merId, myEncoding)
+ "&" + HttpUtility.UrlEncode("merDate", myEncoding) + "=" + HttpUtility.UrlEncode(merDate, myEncoding)
+ "&" + HttpUtility.UrlEncode("merSeqId", myEncoding) + "=" + HttpUtility.UrlEncode(merSeqId, myEncoding)
+ "&" + HttpUtility.UrlEncode("version", myEncoding) + "=" + HttpUtility.UrlEncode(version, myEncoding)
+ "&" + HttpUtility.UrlEncode("chkValue", myEncoding) + "=" + HttpUtility.UrlEncode(sbValue.ToString(), myEncoding);
byte[] postBytes = Encoding.ASCII.GetBytes(param);
try
{
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("请求地址");
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded;charset=GBK";
req.ContentLength = postBytes.Length;
Stream webStream = req.GetRequestStream(); //发送数据
webStream.Write(postBytes, 0, postBytes.Length);
webStream.Close();
//获取返回数据
HttpWebResponse webResponse = (HttpWebResponse)req.GetResponse();
StreamReader reader = new StreamReader(webResponse.GetResponseStream(), Encoding.GetEncoding("GBK"));
sResult = reader.ReadToEnd();
sResult.Trim();
}
catch (Exception e)
{
sResult = "";
return sResult;
}
Encoding myEncoding = Encoding.GetEncoding("GBK");
string param = HttpUtility.UrlEncode("merId", myEncoding) + "=" + HttpUtility.UrlEncode(merId, myEncoding)
+ "&" + HttpUtility.UrlEncode("merDate", myEncoding) + "=" + HttpUtility.UrlEncode(merDate, myEncoding)
+ "&" + HttpUtility.UrlEncode("merSeqId", myEncoding) + "=" + HttpUtility.UrlEncode(merSeqId, myEncoding)
+ "&" + HttpUtility.UrlEncode("version", myEncoding) + "=" + HttpUtility.UrlEncode(version, myEncoding)
+ "&" + HttpUtility.UrlEncode("chkValue", myEncoding) + "=" + HttpUtility.UrlEncode(sbValue.ToString(), myEncoding);
byte[] postBytes = Encoding.ASCII.GetBytes(param);
try
{
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("请求地址");
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded;charset=GBK";
req.ContentLength = postBytes.Length;
Stream webStream = req.GetRequestStream(); //发送数据
webStream.Write(postBytes, 0, postBytes.Length);
webStream.Close();
//获取返回数据
HttpWebResponse webResponse = (HttpWebResponse)req.GetResponse();
StreamReader reader = new StreamReader(webResponse.GetResponseStream(), Encoding.GetEncoding("GBK"));
sResult = reader.ReadToEnd();
sResult.Trim();
}
catch (Exception e)
{
sResult = "";
return sResult;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人