欢迎来到天天文库
浏览记录
ID:43776825
大小:954.50 KB
页数:66页
时间:2019-10-14
《网络编程实用教程 叶树华 高志红 网络编程实用教程_第9章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章HTTP协议及高级编程简要介绍HTTP协议。介绍MFC中的CHtmlView类。使用CHtmlView类,创建一个Web浏览器型的应用程序。9.1HTTP协议HTTP是超文本传输协议(HypertextTransferProtocol)的简称,HTTP协议也是基于TCP/IP的客户/服务器协议。1990年,在万维网应用的开发中,为了解决HTML文档在网上的传输问题,诞生了HTTP协议。至今已有了三个版本,HTTP0.9,HTTP1.0以及HTTP1.1。为了适应下一代的因特网,还出现了HTTPng。
2、事实证明,HTTP比以前的任何一种协议都简单有效,能将信息很好地组织起来,让人们方便地、直接地从Internet上检索和获取所需的信息。9.1.1HTTP的基本概念RFC2068是HTTP1.1的最新的详细描述,本节介绍HTTP的基本概念。图9.1HTTP的会话过程HTTP的会话周期由连接、请求、响应和断开4个阶段组成:(1)建立TCP/IP连接(TCP/IPconnection)(2)Web客户向服务器发送HTTP请求(HTTPrequest)(3)服务器向客户回送HTTP响应(HTTPresponse
3、)(4)断开TCP/IP连接(disconnection)HTTP协议就是规定了Web客户和服务器之间的信息交换规程,以及HTTP请求和HTTP响应消息的内容和格式。HTTP协议应在Web浏览器和Web服务器中实现。换句话说,Web浏览器和Web服务器应按照HTTP协议交换信息。至于HTTP消息的一般格式等具体细节,读者可查阅相关资料。9.1.2HTTP协议的应用HTTP协议对编程有什么用?能够实现什么样实用的程序?这些问题使我们不得不回到HTTP的本质。超文本传输协议,主要是用于传输文件的协议。虽然RF
4、C2068对HTTP协议描述早就超出了文件传输的范围。但是传输文件的作用还是最主要的。在这里我们提出几个问题,这些问题都可以使用HTTP协议编程实现。比如:u基于HTTP的文件断点续传的程序u使用代理服务器下载的程序uWeb服务器程序u能够通过身份认证而下载文件的程序u接受浏览器网页上载文件的程序这些功能的实现都要求用户对HTTP比较了解。9.2利用CHtmlView类创建Web浏览器型的应用程序9.2.1CHtmlView类与WebBrowser控件CHtmlView类在afxhtml.h包含文件中定义
5、,是从CView派生的,如图9.2所示。在标准的MFC框架应用程序中,无论是基于SDI或MDI的,所有从CView派生的类,都提供了由CView提供的功能。图9.2CHtmlView类的继承关系CHtmlView类的主要功能是访问Web网站和HTML文档。这是由于CHtmlView类在MFC的文档/视图结构(MFC'sdocument/viewarchitecture)环境中,进一步提供了WebBrowser控件的功能,可以说CHtmlView类是对WebBrowser控件的封装。WebBrowser控件
6、支持通过超链接和统一资源定位器URL导航的Web浏览。使得应用程序成了一个Web浏览器(webbrowser)。要创建一个Web浏览器型的应用程序,可以使用CHtmlView类。通过MFC应用程序向导实现。9.2.2CHtmlView类的成员函数1.获取和设置属性(Attributes)的成员函数(1)CStringGetType()const;(2)longGetLeft()const;voidSetLeft(longnNewValue);(3)longGetTop()const;voidSetTop(
7、longnNewValue);(4)longGetHeight()const;voidSetHeight(longnNewValue);(5)BOOLGetVisible()const;voidSetVisible(BOOLbNewValue);其它的函数就不一一列举了。2.主要的操作(Operations)成员函数这些成员函数非常有用,常常用在应用程序中。voidGoBack();导航到历史列表的前一个条目(previousitem)。voidGoForward();导航到历史列表的下一个条目。void
8、GoHome();导航到主页,该主页在IE的属性中设置。voidGoSearch();导航到当前搜索页。该页在IE的属性中设置。voidRefresh();重新装入浏览器当前正在显示的URL或者文件,即刷新。voidStop();撤销任何未完成的导航或下载,并且停止任何动态的页面元素,例如背景音乐和动画。Navigate导航到由URL指定的资源。Navigate2导航到由URL指定的资源或者由全路径指定的文件。PutPrope
此文档下载收益归作者所有