zoukankan      html  css  js  c++  java
  • RestSharp发送请求得到Json数据

    NUGET安装:RestSharp

    code:

    
    

    public string Post(string url, string content)
    {
    string contentType = "application/json"; //Content-Type
    try
    {
    var client = new RestClient(url);
    var request = new RestRequest(Method.POST);
    request.Timeout = 10000;
    request.AddParameter(contentType, content, ParameterType.RequestBody);

    
    

    IRestResponse response = client.Execute(request);
    return response.Content; //返回的结果
    }
    catch (Exception ex)
    {
    return "连接服务器出错: " + ex.Message;
    }
    }


    public
    class RestClientManager { public JObject Post(string baseUrl, string url, JObject sendData) { return Post(baseUrl, url, sendData, string.Empty); } public JObject Post(string baseUrl, string url, JObject sendData, string token) { RestClient client = new RestClient(baseUrl); var request = new RestRequest(url, Method.POST); var contenType = "application/json"; request.AddHeader("Accept", contenType); if (!string.IsNullOrWhiteSpace(token)) { request.AddHeader("token", token); } if (sendData == null) { sendData = new JObject(); } request.AddParameter(contenType, sendData, ParameterType.RequestBody); var response = client.Execute(request); if (string.IsNullOrWhiteSpace(response.Content)) { return null; } return JObject.Parse(response.Content); } public JObject Get(string baseUrl, string url, JObject sendData) { return Get(baseUrl, url, sendData, string.Empty); } public JObject Get(string baseUrl, string url, JObject sendData, string token) { string parames = string.Empty; if (sendData != null) { StringBuilder datas = new StringBuilder(); foreach (var item in sendData) { datas.AppendFormat("{0}={1}", item.Key, item.Value); } parames = string.Format("?{0}", string.Join("&", datas)); } var client = new RestClient(string.Format("{0}{1}{2}", baseUrl, url, parames)); var request = new RestRequest(Method.GET); var response = client.Execute(request); return JObject.Parse(response.Content); } }

    使用:

           string baseUrl = "https://api.weixin.qq.com";
                string urlToken = @"/sns/oauth2/access_token";
                JObject paras = new JObject
                {
                    ["appid"] = "",
                    ["secret"] = "",
                    ["code"] = "",
                    ["grant_type"] = "authorization_code"
                };
                JObject objToken = new RestClientManager().Get(baseUrl, urlToken, paras);
           if (objToken["errcode"] == null)
                {
                    string access_token = objToken["access_token"].Value<string>();
                    string openid = objToken["openid"].Value<string>();
           }
  • 相关阅读:
    组合数取模 Lucas定理
    关于上下界的二分查找
    POJ 1091 跳蚤
    Eular 函数模板
    POJ 数学(3)
    SRM 567 div2
    SRM 570 div2
    最大最小搜索,alpha beta 剪枝
    JavaScript:prototype属性使用方法
    ArcGIS网络分析之Silverlight客户端服务区分析(五)
  • 原文地址:https://www.cnblogs.com/xsj1989/p/9436017.html
Copyright © 2011-2022 走看看