C#带Headers调用post请求

    今天在调用第三方后端接口的时候,遇到了一个问题是这样的

之前调用的接口都是向这样的式的我拼接完请求后把参数传进去就直接可以访问了,但是后来加了一个

主要还是拼接的问题,相应的post请求就要加上一个Headers

public string HttpPost(string url, string data,string[]head)
        {
            //创建http请求
            HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
            //字符串转换为字节码
            byte[] bs = Encoding.UTF8.GetBytes(data);
            //参数类型,这里是json类型
            //还有别的类型如"application/x-www-form-urlencoded"
            httpWebRequest.ContentType = "application/json;";
            //参数数据长度
            httpWebRequest.ContentLength = bs.Length;
            //设置请求类型
            httpWebRequest.Method = "POST";
            httpWebRequest.Headers.Add(head[0],head[1]);           
            //设置超时时间
            httpWebRequest.Timeout = 20000;
            //将参数写入请求地址中
            httpWebRequest.GetRequestStream().Write(bs, 0, bs.Length);
            //发送请求
            HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();
            //读取返回数据
            StreamReader streamReader = new StreamReader(httpWebResponse.GetResponseStream(), Encoding.UTF8);
            string responseContent = streamReader.ReadToEnd();
            streamReader.Close();
            httpWebResponse.Close();
            httpWebRequest.Abort();
            return responseContent;
        }

 

Guess you like

Origin blog.csdn.net/qq_42428269/article/details/117046687