• 通过WebApi取出XML数据


    Get请求:

     public static Result<GetExpressCollectionResponseType> GetDataFromWebs(string waybillNumbers)
            {
                var result = new Result<GetExpressCollectionResponseType>();
                try
                {
                    var url = "http://***.com.cn/service/Manage/999001/Expresses/GetExpressByEpcodes";
    
                    var client = new WebClient();
                    client.Headers.Add(HttpRequestHeader.Authorization, "basic OTk5MDAxOjEyMzQ1Njc4");
                    client.Headers.Add(HttpRequestHeader.ContentType, "text/xml; charset=utf-8");
    
                    var postbody = "<string>" + waybillNumbers + "</string>";
                    var data = Encoding.UTF8.GetBytes(postbody);
                    var response = client.UploadData(url, "POST", data);
                  
                    GetExpressCollectionResponseType t = default(GetExpressCollectionResponseType);
                    var xmlSerializer = new XmlSerializer(typeof(GetExpressCollectionResponseType));
                    using (Stream xmlStream = new MemoryStream(response))
                    {
                        using (XmlReader xmlReader = XmlReader.Create(xmlStream))
                        {
                            Object obj = xmlSerializer.Deserialize(xmlReader);
                            t = (GetExpressCollectionResponseType)obj;
                        }
                    }
                    result.Entity = t;
                }
                catch (Exception ex)
                {
                    result.HasError = true;
                    result.ErrorMessage = ex.Message;
                }
                return result;
            }

    Post请求:

     public static Result<string> GetLabelFromWeb(string waybillNumber, string filename, string labelSize)
            {
                var result = new Result<string>();
    
                try
                {
                    var url = string.Format("http://***.com.cn/service/Manage/999001/Expresses/{0}/{1}Label",
                        waybillNumber, labelSize);
    
                    var client = new WebClient();
                    client.Headers.Add(HttpRequestHeader.Authorization, "basic OTk5MDAxOjEyMzQ1Njc4");
                    client.Headers.Add(HttpRequestHeader.ContentType, "text/xml; charset=utf-8");
    
                    client.DownloadFile(url, filename);
    
                    result.Entity = filename;
                }
                catch (Exception ex)
                {
                    result.HasError = true;
                    result.ErrorMessage = ex.Message;
                }
                return result;
            }
  • 相关阅读:
    Java代码输出到txt文件(申请专利贴源码的必备利器)
    Vmware10组建局域网
    Ubuntu14.04更换阿里云源
    Ubuntu16.04如何彻底删除Apache2
    HustOJ平台搭建
    Centos 7 联想Y430P无线网卡驱动安装 过程参考
    Windows远程CentOS桌面
    centos 7 查看系统/硬件信息及运维常用命令+联想Y430P无线网卡驱动安装
    zookeeper工作原理、安装配置、工具命令简介
    centos 7 安装五笔输入法
  • 原文地址:https://www.cnblogs.com/xiaoqi742709106/p/4432630.html
Copyright © 2020-2023  润新知