




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
广州大学学生实验报告开课学院及实验室:电子楼418A 室 2014年 11 月 27 日学院计算机科学与教育软件学院年级、专业、班网络工程113班姓名小玉学号实验课程名称网络编程成绩实验项目名称HTTP协议编程指导老师樊志平一、实验目的 WEB服务器也称为WWW服务器,主要功能是提供网上信息浏览服务,是目前使用最广泛的服务。HTTP协议是万维网中使用最广泛的协议,也是Web服务消息传递的主要传输协议。本实验通过设计和实现简单的WEB服务器和浏览器,使学生熟练掌握HTTP协议的编程,并对WEB服务器的工作原理有比较深入的了解。此外,本实验需要学生能结合TCP套接字编程、多线程编程、输入输出流编程和面向对象分析与设计技术加以解决实际问题,因此实验能提高学生综合运用所学知识并解决实际问题的能力。二、使用仪器、器材微机一台操作系统:WinXP编程软件:eclipse三、实验内容及原理实现简单的Web浏览器和web服务器。4、 实验过程原始数据记录package experiment03;import javax.swing.*;import javax.swing.event.*;import javax.swing.text.EditorKit;import javax.swing.text.html.*;import java.awt.*;import java.awt.event.*;import java.io.*;import .*;import java.util.*;public class HttpClient extends JFrame private JPanel jpNorth = new JPanel();private JLabel lblAddress = new JLabel(请输入网址:);private JTextField jtfAddress = new JTextField(http:/);private JButton btnConnect = new JButton(连接);private JButton btnPrior = new JButton(后退);private JButton btnNext = new JButton(前进);private JPanel jpCenter = new JPanel();private JEditorPane jepContent = new JEditorPane();private JScrollPane jsp = new JScrollPane(jepContent);/记录历史网址ArrayList history = new ArrayList();private int currentIndex = -1;public HttpClient()this.setLayout(new BorderLayout();this.add(jpNorth, BorderLayout.NORTH);jpNorth.setLayout(new FlowLayout();jpNorth.add(lblAddress);jtfAddress.setPreferredSize(new Dimension(300,25);jpNorth.add(jtfAddress);jpNorth.add(btnConnect);jpNorth.add(btnPrior);jpNorth.add(btnNext);/设置内容区域this.add(jpCenter,BorderLayout.CENTER);jpCenter.setLayout(new BorderLayout();jpCenter.add(jsp,BorderLayout.CENTER);EditorKit editKit = jepContent.getEditorKitForContentType(text/html);jepContent.setEditorKit(editKit);jepContent.setEditable(false);/设置事件处理程序btnConnect.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e) try if(jtfAddress.getText().trim().isEmpty() return;jepContent.setPage(jtfAddress.getText();history.add(jtfAddress.getText();currentIndex=history.size()-1; catch (IOException e1) e1.printStackTrace(););/前进按钮事件btnNext.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e) if(currentIndex = -1 | currentIndex=history.size()-1) return;currentIndex+;try jepContent.setPage(history.get(currentIndex);jtfAddress.setText(history.get(currentIndex); catch (IOException e1) / TODO Auto-generated catch blocke1.printStackTrace(););/后退按钮事件btnPrior.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e) if(currentIndex=0) return;currentIndex-;try jepContent.setPage(history.get(currentIndex);jtfAddress.setText(history.get(currentIndex); catch (IOException e1) e1.printStackTrace(););/设置超级链接jepContent.addHyperlinkListener(new HyperlinkListener()Overridepublic void hyperlinkUpdate(HyperlinkEvent e) if(e.getEventType() = HyperlinkEvent.EventType.ACTIVATED)URL dest = e.getURL();try jepContent.setPage(dest);history.add(jtfAddress.getText();currentIndex=history.size()-1;jtfAddress.setText(dest.toString(); catch (IOException e1) / TODO Auto-generated catch blocke1.printStackTrace(););public static void main(String args) HttpClient httpClient = new HttpClient();httpClient.setSize(600, 400);httpClient.setLocation(300, 300);httpClient.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);httpClient.setTitle(HTTP浏览器);httpClient.setVisible(true);五、实验结果及分析HTTP 是一种请求/响应式的协议。一个客户机与服务器建立连接后,发送一个请求给服务器;服务器接到请求后,给予相应的响应信息。当用户要访问网络中的某个网页时,大致要经过以下几个步骤:1. 用户首先要确定网页文件所在的URL(统一资源定位符,也就是网页在网络上的家庭住址,通过这个地址就可以找到这个网页)如2. 浏览器向DNS(域名服务器)发出请求,告诉DNS说:我要把转化为它所定义的IP地址,这里可以简单把DNS理解为一个字典,知道域名就可以知道域名对于的IP地址,他们有这个一个映射的关系3. DNS收到请求后就开始查询,查到后向浏览器返回结果。如域名为对应的IP地址为164. 知道IP地址后, 浏览器向IP地址为16的主机发出与端口号80建议一条TCP连接请求(HTTP协议是建立在传输层TCP的基础上的),80端口是服务器提供we
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年各类产业园区笔试面试题目
- 体育教学技能训练课件
- 2025年煤气工程师岗位面试宝典专业知识题预测与解答技巧
- 商业计划书暨路演(模版)
- 农业信息技术教学课件
- 用药安全警示案例课件
- 江苏苏州2011-2020年中考满分作文90篇
- 河北省张家口市桥西区2024-2025学年度第二学期期末考试七年级语文试卷(含答案)
- 《雨林》课文教学课件
- 新解读《GB-T 35003 - 2018非易失性存储器耐久和数据保持试验方法》
- 少数民族民歌 课件-2024-2025学年高一上学期音乐人音版(2019)必修音乐鉴赏
- Android移动应用开发(微课版)全套教学课件
- 腰椎间盘突出症试讲教案
- 钢旋转楼梯施工方案
- 2025-2031年中国手抓饼行业市场全景调研及投资规划建议报告
- 计算机信息安全管理培训
- 电动车充电桩调研报告
- 合同能源管理epc合同范本
- 2025年天翼云解决方案架构师认证考试指导题库-下(多选、判断题)
- 道路工程材料第7版 课件全套 -孙大权 0-绪论-6 无机结合料稳定材料
- 数学新课标培训汇报
评论
0/150
提交评论