zoukankan      html  css  js  c++  java
  • 制作一个简易的RestClient类

    public class RestClient
        {
            private HttpWebRequest CreateHttpRequest(string url, string method)
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                this.SetProxy(request);
                request.Headers.Set("Cache-Control", "No-Cache");
                request.Method = method;
                request.ContentType = "application/json";
                return request;
            }
    
            public virtual T Post<T>(string url, object requestContact) where T : class
            {
                T local;
                HttpWebRequest request = this.CreateHttpRequest(url, "Post");
                if (requestContact != null)
                {
                    using (Stream stream = request.GetRequestStream())
                    {
                        new DataContractJsonSerializer(requestContact.GetType()).WriteObject(stream, requestContact);
                    }
                }
                using (WebResponse response = request.GetResponse())
                {
                    using (Stream stream2 = response.GetResponseStream())
                    {
                        local = new DataContractJsonSerializer(typeof(T)).ReadObject(stream2) as T;
                    }
                }
                return local;
            }
    
            public T Get<T>(string url, object requestContact) where T : class
            {
                T local;
                HttpWebRequest request = this.CreateHttpRequest(url, "GET");
                if (requestContact != null)
                {
                    using (Stream stream = request.GetRequestStream())
                    {
                        new DataContractJsonSerializer(requestContact.GetType()).WriteObject(stream, requestContact);
                    }
                }
                using (WebResponse response = request.GetResponse())
                {
                    using (Stream stream2 = response.GetResponseStream())
                    {
                        local = new DataContractJsonSerializer(typeof(T)).ReadObject(stream2) as T;
                    }
                }
                return local;
            }
    
            private void SetProxy(HttpWebRequest request)
            {
                WebProxy proxy2 = new WebProxy
                {
                    Credentials = CredentialCache.DefaultCredentials
                };
                WebProxy proxy = proxy2;
                request.Proxy = proxy;
            }
        }
    
    一花一世界 一叶一菩提
  • 相关阅读:
    CV方向的高效阅读英文文献方法总结
    数据增强方法总结
    CNN结构演变总结(三)设计原则
    CNN结构演变总结(二)轻量化模型
    CNN结构演变总结(一)经典模型
    CNN可视化技术总结(四)--可视化工具与项目
    Codeforces972 D. Kuro and GCD and XOR and SUM 01Trie
    Codeforces 982 D. Shark
    Codeforces Round #700 (Div. 2) A~D题解
    codeforces 1004 D. Sonya and Matrix 构造
  • 原文地址:https://www.cnblogs.com/darjuan/p/2299604.html
Copyright © 2011-2022 走看看