Esempio n. 1
0
        /// <summary>
        /// Post请求得到响应内容
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="data">请求参数</param>
        /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
        /// <returns></returns>
        public async Task <string> GetPostByStringAsync(string url, object data,
                                                        RequestBodyFormat requestBodyFormat = null)
        {
            var res = await GetByPostAsync(url, data, requestBodyFormat);

            return(res.Content);
        }
Esempio n. 2
0
        /// <summary>
        /// Post请求
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="data">请求参数</param>
        /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
        /// <returns></returns>
        public byte[] GetBytesByPost(string url, object data,
                                     RequestBodyFormat requestBodyFormat = null)
        {
            var request = GetByPost(url, data, requestBodyFormat);

            return(GetClient().Execute(request).RawBytes);
        }
Esempio n. 3
0
        /// <summary>
        /// Post请求得到响应信息为Json对象
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="data">请求参数</param>
        /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public async Task <T> GetJsonByPostAsync <T>(string url, object data,
                                                     RequestBodyFormat requestBodyFormat = null)
        {
            var res = await GetPostByStringAsync(url, data, requestBodyFormat);

            if (string.IsNullOrEmpty(res))
            {
                return(default);
 /// <summary>
 /// 请求接口域
 /// </summary>
 /// <param name="host">域名</param>
 /// <param name="encoding">编码格式 默认Utf8</param>
 /// <param name="requestBodyType">请求类型</param>
 /// <param name="requestBodyFormat">等待响应的数据类型</param>
 /// <param name="jsonProvider"></param>
 public HttpClient(string host, Encoding encoding,
                   RequestBodyType requestBodyType     = null,
                   RequestBodyFormat requestBodyFormat = null, IJsonProvider jsonProvider = null) : this(host, requestBodyType, requestBodyFormat,
                                                                                                         jsonProvider ?? new NewtonsoftJsonProvider())
 {
     Host      = host;
     _encoding = encoding ?? Encoding.UTF8;
 }
Esempio n. 5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="data">数据</param>
 /// <param name="requestBodyFormat">请求Body格式</param>
 /// <param name="files">文件信息</param>
 /// <param name="jsonProvider"></param>
 /// <param name="xmlProvider"></param>
 public RequestBody(object data, RequestBodyFormat requestBodyFormat = null,
                    List <RequestMultDataParam> files = null, IJsonProvider jsonProvider = null, IXmlProvider xmlProvider = null)
 {
     Data = data ?? new { };
     RequestBodyFormat = requestBodyFormat ?? RequestBodyFormat.None;
     Files             = files ?? new List <RequestMultDataParam>();
     _jsonProvider     = jsonProvider;
     _xmlProvider      = xmlProvider;
 }
Esempio n. 6
0
 /// <summary>
 /// 请求接口域
 /// </summary>
 /// <param name="host">域名</param>
 /// <param name="requestBodyFormat">等待响应的数据类型</param>
 /// <param name="requestBodyType">请求类型</param>
 /// <param name="xmlProvider"></param>
 public HttpClient(string host,
                   RequestBodyFormat requestBodyFormat = null,
                   RequestBodyType requestBodyType     = null, IXmlProvider xmlProvider = null) : this(host)
 {
     Host               = host;
     _xmlProvider       = xmlProvider ?? new XmlProvider();
     _requestBodyType   = requestBodyType ?? RequestBodyType.ApplicationJson;
     _requestBodyFormat = requestBodyFormat;
 }
Esempio n. 7
0
        /// <summary>
        /// Post请求得到响应内容
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="data">请求参数</param>
        /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
        /// <returns></returns>
        public string GetStringByPost(string url, object data,
                                      RequestBodyFormat requestBodyFormat = null)
        {
            var request = GetByPost(url, data, requestBodyFormat);
            var content = GetClient().Execute(request).Content;

            AddLog(request, content);
            return(content);
        }
Esempio n. 8
0
 /// <summary>
 /// 请求接口域
 /// </summary>
 /// <param name="host">域名</param>
 /// <param name="requestBodyFormat">等待响应的数据类型</param>
 /// <param name="requestBodyType">body请求类型</param>
 /// <param name="jsonProvider"></param>
 public HttpClient(string host,
                   RequestBodyFormat requestBodyFormat = null,
                   RequestBodyType requestBodyType     = null, IJsonProvider jsonProvider = null) : this(host)
 {
     Host               = host;
     _jsonProvider      = jsonProvider ?? new NewtonsoftJsonProvider();
     _requestBodyType   = requestBodyType ?? RequestBodyType.ApplicationJson;
     _requestBodyFormat = requestBodyFormat;
 }
 /// <summary>
 /// 请求接口域
 /// </summary>
 /// <param name="host">域名</param>
 /// <param name="encoding">编码格式 默认Utf8</param>
 /// <param name="requestBodyType">请求类型</param>
 /// <param name="requestBodyFormat">等待响应的数据类型</param>
 /// <param name="xmlProvider"></param>
 public HttpClient(string host, Encoding encoding,
                   RequestBodyType requestBodyType     = null,
                   RequestBodyFormat requestBodyFormat = null, IXmlProvider xmlProvider = null) : this(host, requestBodyType, requestBodyFormat,
                                                                                                       xmlProvider ?? new XmlProvider())
 {
     Host               = host;
     _encoding          = encoding ?? Encoding.UTF8;
     _requestBodyFormat = requestBodyFormat;
 }
Esempio n. 10
0
        /// <summary>
        /// Post请求得到响应信息为Xml对象
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="data">请求参数 </param>
        /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public T GetXmlByPost <T>(string url, object data,
                                  RequestBodyFormat requestBodyFormat = null)
        {
            var res = GetStringByPost(url, data, requestBodyFormat);

            if (string.IsNullOrEmpty(res))
            {
                return(default(T));
            }

            return(_xmlProvider.Deserialize <T>(res, _encoding));
        }
Esempio n. 11
0
        /// <summary>
        /// Post请求得到响应信息为Json对象
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="data">请求参数</param>
        /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public T GetJsonByPost <T>(string url, object data,
                                   RequestBodyFormat requestBodyFormat = null)
        {
            var res = GetStringByPost(url, data, requestBodyFormat);

            if (string.IsNullOrEmpty(res))
            {
                return(default(T));
            }

            return((T)_jsonProvider.Deserialize(res, typeof(T)));
        }
Esempio n. 12
0
 /// <summary>
 /// Post请求得到响应流
 /// </summary>
 /// <param name="url">请求地址</param>
 /// <param name="data"></param>
 /// <param name="requestBodyFormat"></param>
 /// <returns></returns>
 public Stream GetStreamByPost(string url, object data,
                               RequestBodyFormat requestBodyFormat = null)
 {
     return(new MemoryStream(GetBytesByPost(url, data, requestBodyFormat)));
 }
Esempio n. 13
0
 /// <summary>
 /// Post请求
 /// </summary>
 /// <param name="url">请求地址</param>
 /// <param name="data">请求参数</param>
 /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
 /// <returns></returns>
 public byte[] GetBytesByPost(string url, object data,
                              RequestBodyFormat requestBodyFormat = null)
 {
     return(GetByPost(url, data, requestBodyFormat).RawBytes);
 }
Esempio n. 14
0
 /// <summary>
 /// Post请求得到响应内容
 /// </summary>
 /// <param name="url">请求地址</param>
 /// <param name="data">请求参数</param>
 /// <param name="requestBodyFormat">请求类型格式化 默认为Json</param>
 /// <returns></returns>
 public string GetStringByPost(string url, object data,
                               RequestBodyFormat requestBodyFormat = null)
 {
     return(GetByPost(url, data, requestBodyFormat).Content);
 }