zoukankan      html  css  js  c++  java
  • HttpWebRequest 知识点

    1                string Url = System.Configuration.ConfigurationManager.AppSettings["CallPaperInvoiceURL"];               
    2                 Url = @"" + Url + "?id=" + PK_ECOrderHead + "&whse=" + Whse + "";
    3                 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
    4                 request.Method = "GET";
    5                 request.ProtocolVersion = HttpVersion.Version10;
    6                 ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
    7                 HttpWebResponse res = (HttpWebResponse)request.GetResponse();
    8                 StreamReader rd = new StreamReader(res.GetResponseStream());
    9                 string theContent = rd.ReadToEnd();
     1                 string WHSE = Request["WHSE"].ToString();
     2                 string transId = OrderData.GenerateTransId(18);
     3                 eStore2.App_Code.Data.OmsRoot.Root root = new eStore2.App_Code.Data.OmsRoot.Root();
     4                 eStore2.App_Code.Data.OmsRoot.Head head = new eStore2.App_Code.Data.OmsRoot.Head();
     5                 head.transId = transId;
     6                 head.transCode = "S1005";
     7                 eStore2.App_Code.Data.OmsRoot.Body body = new eStore2.App_Code.Data.OmsRoot.Body();
     8                 body.WHSE = WHSE;
     9                 root.head = head;
    10                 root.body = body;
    11                 Encoding encoding = Encoding.UTF8;
    12                 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(OrderData.Get_GetIMInventoryURL(System.Configuration.ConfigurationManager.AppSettings["GetIMInventory_KeyName"]).Rows[0]["KeyValue"].ToString());
    13                 request.Method = "POST";
    14                 request.Accept = "text/html, application/xhtml+xml, */*";
    15                 request.ContentType = "application/json";
    16                 byte[] buffer = encoding.GetBytes(JsonConvert.SerializeObject(root));
    17                 request.ContentLength = buffer.Length;
    18                 request.GetRequestStream().Write(buffer, 0, buffer.Length);
    19                 HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    20                 using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
    21                 {
    22                     string Result = reader.ReadToEnd();
    23                     eStore2.App_Code.Data.OmsRoot.Root root_s = JsonConvert.DeserializeObject<eStore2.App_Code.Data.OmsRoot.Root>(Result);
    24                     List<eStore2.App_Code.Data.OmsRoot.DetailItem> detailItems = root_s.body.detail;
    25                     foreach (var item in detailItems)
    26                     {
    27                         OrderData.Insert_MDB_SYNC_LOG(item.PartNo, item.Qty);
    28                     }
    29                 }
    30                 ShowAlertMessage("库存获取完毕");
                       var rss = new JObject
                        {
                            {"Head",new JObject
                                {
                                    {"TransCode","X1009" },
                                    {"TransId",transid}
                                }
                            },
                            { "Body", new JObject
                                {
                                    {"OrderSN", q.OrderSn },
                                    {"WHSE",q.Whse},
                                    {"SNs", SNs }
                                }
                            }
                         };                   
    
                        //呼叫接口              
                        HttpContent JSONContents = new StringContent(JsonConvert.SerializeObject(rss), Encoding.UTF8, "application/json");
                        using (var response = httpClient.PostAsync(Url, JSONContents).Result)
                        {
                            if (response.IsSuccessStatusCode)
                            {
                                string s = $"{response.Content.ReadAsStringAsync().Result}";
                                if (s == "Y")
                                {
                                    using (var tran = _Database.Database.BeginTransaction())
                                    {
                                        try
                                        {
                                            await _Database.OmsEcjsonlog.AddAsync(new OmsEcjsonlog
                                            {
                                                CreateDateTime = System.DateTime.UtcNow.AddHours(8),
                                                Fk = _HeadId,
                                                Json = JsonConvert.SerializeObject(rss),                                           
                                                Msg = $"{q.OrderSn} Paper Invoice"
                                            });
                                            await _Database.Log.AddAsync(GenerateECOrderLog($"成功"));
                                            await _Database.SaveChangesAsync();
                                            tran.Commit();
                                        }
                                        catch (Exception ex)
                                        {
                                            if (tran != null)
                                                tran.Rollback();
                                            throw new Exception($"Failed,{ex.Message}");
                                        }
                                    }
                                }
                                else
                                    throw new Exception($"服务系统:{s}");
                            }
                            else
                            {
                                throw new Exception(response.StatusCode.ToString());
                            }
                        }
  • 相关阅读:
    Linux下安装python
    oracle 12c使用问题总结
    oracle下载地址
    Informatica PowerCenter下载地址
    主流ETL工具
    【phonegap】下载文件
    eclipse显示包的层次关系
    UltraISO 9.6.5.3237
    Windows操作系统设置代理
    wireshark常用的过滤命令
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/10937678.html
Copyright © 2011-2022 走看看