欢迎来到天天文库
浏览记录
ID:957224
大小:249.00 KB
页数:15页
时间:2017-10-20
《http客户端的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一、实验目的和要求1、实验目的HTTP客户端程序的功能是给出一个URL,要求程序能够获得指定URL所指向的内容,对于获得内容不必做进一步的处理,只打印HTML代码即可l通过HTTP客户端程序使学生掌握网络编程的基本知识和基本技能;l使学生掌握HTTP协议的常用命令;l通过跟踪运行java网络包,使学生了解网络编程实现的细节。2、实验要求本实验要求实现一个简单的HTTP客户端,具体内容及要求如下:l分析HTTP客户端程序的功能,要求能根据给定的URL,获得URL指向的资源,对于资源的内容可以不做任何的处理,直接打印即可;l实现
2、HTTP客户端程序;l跟踪运行java网络包。二、系统技术路线和运行环境1、技术路线:本系统采用Java语言开发,可以适应几乎所有支持JVM的操作系统。同时Java语言在网络领域的特殊优势,使得它所提供的类库中包含了较为丰富的网络编程API,可以使开发人员方便地开发网络通信类应用程序。其次还采用了Tomcat6.0与jsp相结合的web建设、使得该系统能够更好的符合实验的要求和标准。2、系统运行环境:l硬件环境:PC机一台l软件环境:操作系统:WindowsXP、Tomcat6.0、jdk6.0、eclipse等三、程序的逻
3、辑框图程序流逻辑框图能够帮助我们更好的熟悉和了解该系统的运行过程,本系统的一些逻辑框图如下所示:Web服务器互联网独立的应用程序Web浏览器客户端读取文件本地文件客户端从web服务器读取文件接受URL请求进行域名解析向目标Web服务器发送连接请求域名解析返回IP地址返回出错信息调用ipv6协议栈,与web服务器建立TCP6连接IP地址域名Ipv4地址Ipv6地址通信并在Web服务器和客户端之间转发数据是是是否否否否否否URL与地址之间的处理过程开始返回接收HTTP方法并设定方法标志计算URL接收HTTP方法并设定方法标志接收
4、并处理控制数据存在网页?HTTP方法?GETNYPOSTHTTP解析流程三、程序源代码1、基于URL的HttpClient.java程序代码如下:importjava.awt.*;importjava.awt.event.*;importjava.io.*;importjava.net.*;importjavax.swing.*;publicclassHttpClientextendsJAppletimplementsActionListener{//创建一个按钮来点击事件privateJButtonjbtView=newJ
5、Button("View");//文本字段来接收文件的名字privateJTextFieldjtfURL=newJTextField(12);//文本区域来存储文件privateJTextAreajtaFile=newJTextArea();//标签来显示状态privateJLabeljlblStatus=newJLabel();/**初始化applet**/publicvoidinit(){//创建一个面板来保存一个标签、文本字段和一个按钮JPanelp1=newJPanel();p1.setLayout(newBorde
6、rLayout());p1.add(newJLabel("address"),BorderLayout.WEST);p1.add(jtfURL,BorderLayout.CENTER);p1.add(jbtView,BorderLayout.EAST);//放置文本区域和面板getContentPane().setLayout(newBorderLayout());getContentPane().add(newJScrollPane(jtaFile),BorderLayout.CENTER);getContentPane(
7、).add(p1,BorderLayout.NORTH);getContentPane().add(jlblStatus,BorderLayout.SOUTH);//登记侦听器jbtView.addActionListener(this);}/**处理“视图”按钮**/publicvoidactionPerformed(ActionEvente){if(e.getSource()==jbtView)showFile();}privatevoidshowFile(){//声明为阅读文本缓冲流的URLBufferedReader
8、infile=null;URLurl=null;try{//获取URL从文本字段url=newURL(jtfURL.getText().trim());//创建一个缓冲流InputStreamis=url.openStream();infile=newBufferedReader(newI
此文档下载收益归作者所有