zoukankan      html  css  js  c++  java
  • c# post方法亲测可用

         /// <summary>
            /// Post接口方法
            /// </summary>
            /// <param name="requestUri"></param>
            /// <param name="json"></param>
            /// <returns></returns>
            public static string PostHttpRequest(string requestUri, string json, IDbSqlService dbSqlService, Int32 time = 7000, string version = "1.0")
            {
                DateTime requestDate = DateTime.Now;
                DateTime respondeDate;
                TimeSpan ts;
    
                //json格式请求数据
                string requestData = json;
                HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(requestUri);
                //utf-8编码
                byte[] buf = System.Text.Encoding.GetEncoding("utf-8").GetBytes(requestData);
    
                //post请求
                myRequest.Method = "POST";
                myRequest.ContentLength = buf.Length;
                myRequest.MaximumAutomaticRedirections = 1;
                myRequest.Headers.Add("Api-Version", version);
                myRequest.AllowAutoRedirect = true;
                myRequest.Timeout = time;
    
                myRequest.ContentType = "application/json; charset=utf-8";
                myRequest.Accept = "application/json";
                try
                {
                    Stream newStream = myRequest.GetRequestStream();
                    newStream.Write(buf, 0, buf.Length);
                    newStream.Close();
    
                    string ReqResult = string.Empty;
                    HttpWebResponse myResponse = null;
    
                    myResponse = (HttpWebResponse)myRequest.GetResponse();
                    respondeDate = DateTime.Now;
                    ts = respondeDate.Subtract(requestDate);
                    StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
                    ReqResult = reader.ReadToEnd();
                    reader.Close();
                    myResponse.Close();
                    InsertLog(requestDate, respondeDate, ts, json, requestUri, myResponse.Method, myResponse.StatusCode.ToString(), ReqResult, dbSqlService);
                    return ReqResult;
                }
                catch (Exception ex)
                {
                    respondeDate = DateTime.Now;
                    ts = respondeDate.Subtract(requestDate);
                    InsertLog(requestDate, respondeDate, ts, ex.Message, requestUri, "Post", "Exception", "", dbSqlService);
                    return ex.Message;
                }
    
    
            }
  • 相关阅读:
    下载安装包,安装PySide2到windows系统
    Qt5 中关于信号槽 SIGNALS/SLOTS的改动
    软件产品线、MVC、MVP
    UML序列图总结
    浅谈UML中常用的几种图
    docker安装gitlab-ce镜像,使用其他端口
    git在linux下的安装和使用
    服务注册中心Eureka Server的简单配置、访问控制配置以及高可用配置
    让你远离sql语句的Mybatis工具:Tkmybatis
    tk mybatis update 各种类型
  • 原文地址:https://www.cnblogs.com/shuai0147/p/9212594.html
Copyright © 2011-2022 走看看