您的位置:首页 > 理论基础 > 计算机网络

http程序接口、调用(最入门级,文末附Demo)

2016-10-20 11:28 211 查看

HTTP协议简介


既然是基于HTTP协议开发,那么就首先要了解下HTTP协议的相关内容~

在TCP/IP体系结构中,HTTP属于应用层协议,位于TCP/IP协议的顶层。浏览Web时,浏览器通过HTTP协议与Web服务器交换信息。这些信息(文档)类型的格式由MIME定义。

HTTP协议具有以下的特点:

HTTP按客户/服务器模式工作
HTTP支持客户(一般情况是浏览器)与服务器的通讯,相互传输数据。
HTTP定义的事务处理由以下四步组成:

客户与服务器建立连接;

客户向服务器提出请求;

如果请求被接受,则服务器送回响应,在响应中包括状态码和所需的文件;

客户与服务器断开连接

一次HTTP操作称为一次事务(transaction)。
HTTP是无状态的
也就是说,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。

HTTP使用元信息作为头标
HTTP对所有事务都加了头标(header)。也就是说,在主要数据前加上一块信息,称为元信息(metainformation)。它使服务器能够提供正在传送数据的有关信息。例如,传送对象是哪种类型,是用哪种语言书写的等。
从功能上讲,HTTP支持四类元信息:一般信息头标、请求头标、响应头标和实体头标。

HTTP支持两种请求和响应格式
HTTP由不同的两部分组成,一是从浏览器发往服务器的请求,二是服务器对客户的响应。
HTTP支持两种请求和响应,即简单请求与完全请求和简单响应与完全响应。

HTTP是基于文本的简单协议



private static string Post(string url, byte[] bytesToPost)
{
if (String.IsNullOrEmpty(url))
return "url参数为空值";
if (bytesToPost == null)
return "post数据为空值";
string ResponseString = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
System.Net.ServicePointManager.DefaultConnectionLimit = 50;
request.KeepAlive = false;
request.Method = "POST";
request.ContentType = "text/xml";//提交xml
request.ContentLength = bytesToPost.Length;
Stream writer = request.GetRequestStream();
writer.Write(bytesToPost, 0, bytesToPost.Length);
HttpWebResponse HttpWebRespon = (HttpWebResponse)request.GetResponse();
StreamReader myStreamReader = new StreamReader(HttpWebRespon.GetResponseStream(), Encoding.UTF8);
ResponseString = myStreamReader.ReadToEnd();
myStreamReader.Close();

writer.Flush();
if (writer != null)
{
writer.Close();
}
if (request != null)
{
request.Abort();
}
return ResponseString;
}


View Code
效果,先运行Demo 程序再运行调用程序即可看到如下效果



请求成功,返回结果

PS:具体代码执行过程大家可以下完Demo后自行debug看看,代码灰常简单,算是最简单的http请求和响应以及调用的流程了,在复杂的过程也是基于这个流程来执行的

Demo 地址

https://github.com/XiaoYong666/Http-interface-call

注:介绍部分内容转载摘抄自网络,若有文章雷同,请评论留言~定会及时注明出处
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: