理解 Soap
http://www.cnblogs.com/yhuang/archive/2012/04/04/share_storm.html
自己也写了下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using MyCmn; using System.Web; using System.Net; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { var str = @"<?xml version=""1.0"" encoding=""utf-8""?> <soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema""> <soap:Body> <Login xmlns=""MyServer""> <RequestJson>{WebName:""iudi"",Password:""iudi""}</RequestJson> </Login> </soap:Body> </soap:Envelope>"; HttpWebRequest request = HttpWebRequest.Create("http://udi-pc/WcfService/AndroidApp.svc") as HttpWebRequest; request.Method = "POST"; request.Headers["SoapAction"] = "MyServer/AndroidApp/Login"; request.ContentType = "text/xml; charset=utf-8"; request.Pipelined = true; request.AllowAutoRedirect = true; request.KeepAlive = true; request.Headers["UseCookieContaner"] = "True"; var rs = request.GetRequestStream(); var ary1 = System.Text.Encoding.UTF8.GetBytes(str); rs.Write(ary1, 0, ary1.Length); var resp = request.GetResponse() as HttpWebResponse; using (var respStream = resp.GetResponseStream()) { System.IO.BinaryReader reader = new BinaryReader(respStream); byte[] ary = null; if (resp.ContentLength <= 0) { var listAry = new List<byte>(); while (true) { var tempAry = reader.ReadBytes(10240); if (tempAry.Length == 0) break; listAry.AddRange(tempAry); } ary = listAry.ToArray(); } else { ary = reader.ReadBytes(resp.ContentLength.AsInt()); } var html = ""; if (resp.CharacterSet.HasValue()) { html = System.Text.Encoding.GetEncoding(resp.CharacterSet).GetString(ary); } else { html = System.Text.Encoding.Default.GetString(ary); } Console.WriteLine(html); } } } }
![]() |
作者:NewSea 出处:http://newsea.cnblogs.com/
QQ,MSN:iamnewsea@hotmail.com 如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端