zoukankan      html  css  js  c++  java
  • httpclient发送接受请求

    需要注意三部分,request和参数的处理,响应数据。与请求相关的dll是System.Net。

    核心代码:

    private string Post(string requestUrlString, string data, string header)
    {

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(requestUrlString);
    request.Method = "POST";
    request.ContentType = "text/html"; //内容类型
    request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461; .NET CLR 1.0.3705)";

    if (!header.IsNullOrEmpty())
    {
    request.Headers = new WebHeaderCollection();
    request.Headers.Add(header);
    }
    string entity = string.Empty;
    try
    {
    if (data != string.Empty)
    {
    #region 填充要post的内容
    byte[] bytes = UnicodeEncoding.UTF8.GetBytes(data);
    request.ContentLength = bytes.Length;
    Stream requestStream = request.GetRequestStream();
    requestStream.Write(bytes, 0, bytes.Length);
    requestStream.Close();
    #endregion
    }

    using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
    {
    if (response.StatusCode == HttpStatusCode.OK)
    {
    entity = response.GetResponseStream().FromStreamToString();
    }
    }
    }
    catch (Exception ex)
    {
    LogHelper.WriteInfoLog(typeof(HttpClient),
    string.Format("发送HTTP请求失败,URL:{0},Data:{1},Header:{2};{3};{4}",
    requestUrlString, data, header, ex.Message, ex.StackTrace));
    throw ex;
    }

    LogHelper.WriteInfoLog(typeof(HttpClient), "请求地址:" +
    requestUrlString + " 请求参数:" + data + " User_Token:" + header + " 请求返回:" + entity);

    return entity;
    }

  • 相关阅读:
    PowerDesigner反向生成物理数据模型
    10个JavaScript的难点
    Golang数组拼接为字符串
    Golang对元素slice并去重
    golang获取开始日期和结束日期的所有日期列表
    go数组取交集截取
    golang学习笔记
    go语言time包简单使用
    windows为GO设置代理解决go get缓慢
    sublime使用笔记
  • 原文地址:https://www.cnblogs.com/anlegou/p/6491811.html
Copyright © 2011-2022 走看看