C# 格格家接口对接

 一、实现图片

 二、实现通用方法

        /// <summary>
        /// 调用通用方法
        /// </summary>
        /// <param name="strURL">调用地址+接口名称</param>
        /// <param name="jsonParas">执行json字符串</param>
        /// <param name="sign">sign</param>
        /// <returns>json字符串,接口返回结果</returns>
        public string Post(string strURL, string jsonParas, string sign)
        { 
            //string strURL =methodName;
            //创建一个HTTP请求  
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strURL);
            //Post请求方式  
            request.Method = "POST";
            request.Headers.Add("sign", sign); 
            //内容类型
            request.ContentType = "application/json;charset=utf-8";
            //jsonParas = HttpUtility.UrlEncode(jsonParas);
            string paraUrlCoded = jsonParas; 
            byte[] payload;
            //将Json字符串转化为字节  
            payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
            //设置请求的ContentLength   
            request.ContentLength = payload.Length;
            //发送请求,获得请求流
            Stream writer;
            try
            {
                writer = request.GetRequestStream();//获取用于写入请求数据的Stream对象
            }
            catch (Exception)
            {
                writer = null;
                Console.Write("连接服务器失败!");
            }
            //将请求参数写入流
            writer.Write(payload, 0, payload.Length);
            writer.Close();//关闭请求流
            String strValue = "";//strValue为http响应所返回的字符流
            HttpWebResponse response;
            try
            {
                //获得响应流
                response = (HttpWebResponse)request.GetResponse();
            }
            catch (WebException ex)
            {
                response = ex.Response as HttpWebResponse;
            }
            Stream s = response.GetResponseStream();
            StreamReader reader = new StreamReader(s);
            strValue = reader.ReadToEnd();
            return strValue;//返回Json数据
        }

        /// <summary>        
        /// MD5签名方法        
        /// </summary>        
        /// <param name="inputText"></param>        
        /// <returns></returns>        
        public string MD5(string inputText)
        {
            MD5 md5 = new MD5CryptoServiceProvider();
            byte[] fromData = System.Text.Encoding.UTF8.GetBytes(inputText);
            byte[] targetData = md5.ComputeHash(fromData);
            string byte2String = null;
            for (int i = 0; i < targetData.Length; i++)
            {
                byte2String += targetData[i].ToString("x2");
            }
            return byte2String;
        }

猜你喜欢

转载自www.cnblogs.com/lanyubaicl/p/10363870.html