java_socket服务器给浏览器发信息(1)

java_socket服务器给浏览器发信息(1)

ID:6075191

大小:315.00 KB

页数:32页

时间:2018-01-02

java_socket服务器给浏览器发信息(1)_第1页
java_socket服务器给浏览器发信息(1)_第2页
java_socket服务器给浏览器发信息(1)_第3页
java_socket服务器给浏览器发信息(1)_第4页
java_socket服务器给浏览器发信息(1)_第5页
资源描述:

《java_socket服务器给浏览器发信息(1)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、JavaSocket现实简单的HTTP服务一个简单的用JavaSocket编写的HTTP服务器应用,演示了请求和应答的协议通信内容以及给客户端返回HTML文本和二进制数据文件(一个图片),同时展示了404,200等状态码.  首先运行这个程序,然后打开Web浏览器,键入http://localhost,则这个程序能够显示出浏览器发送了那些信息并且向浏览器返回一个网页和一副图片,并测试同浏览器对话.  当浏览器看到HTML中带有图片地址时,则会发出第二次连接来请求图片等资源.  这个例子可以帮您理解Java的HTTP服务器软件是基于J2SE的Socket等软件

2、编写的概念,并熟悉HTTP协议.  相反的用Telnet连接到已有的服务器则可以帮忙理解浏览器的运行过程和服务器端的返回内容.     当用户在Web浏览器地址栏中输入一个带有http://前缀的URL并按下Enter后,或者在Web页面中某个以http://开头的超链接上单击鼠标,HTTP事务处理的第一个阶段--建立连接阶段就开始了.HTTP的默认端口是80.  随着连接的建立,HTTP就进入了客户向服务器发送请求的阶段.客户向服务器发送的请求是一个有特定格式的ASCII消息,其语法规则为:  

3、>  {

:}    {EntityBody} 请求消息的顶端是请求行,用于指定方法,URL和HTTP协议的版本,请求行的最后是回车换行.方法GET,POST,HEAD,PUT,DELETE等.  在请求行之后是若干个报头(Header)行.每个报头行都是由一个报头和一个取值构成的二元对,报头和取值之间以":"分隔;报头行的最后是回车换行.常见的报头有Accept(指定MIME媒体类型),Accept_Charset(响应消息的编码方式),Accept_Encoding(响应消息的字符集),User_Age

4、nt(用户的浏览器信息)等.  在请求消息的报头行之后是一个回车换行,表明请求消息的报头部分结束.在这个之后是请求消息的消息实体(EntityBody).具体的例子参看httpRequest.txt. Web服务器在收到客户请求并作出处理之后,要向客户发送应答消息.与请求消息一样,应答消息的语法规则为:  []  {

:}     {EntityBody} 应答消息的第一行为状态行,其中包括了HTTP版本号,状态码和对状态码进行

5、简短解释的消息;状态行的最后是回车换行.状态码由3位数字组成,有5类:   参看:HTTP应答码及其意义      1XX保留   2XX表示成功   3XX表示URL已经被移走   4XX表示客户错误   5XX表示服务器错误  例如:415,表示不支持改媒体类型;503,表示服务器不能访问.最常见的是200,表示成功.常见的报头有:Last_Modified(最后修改时间),Content_Type(消息内容的MIME类型),Content_Length(内容长度)等. 在报头行之后也是一个回车换行,用以表示应答消息的报头部分的结束,以及应答消息实体的开

6、始. 下面是一个应答消息的例子:  HTTP/1.0200OK  Date:Moday,07-Apr-9721:13:02GMT  Server:NCSA/1.1  MIME_Version:1.0  Content_Type:text/html  Last_Modified:ThuDec509:28:011996  Coentent_Length:3107     </HTML>     在用Java语言实现HTTP服务器时,首先启动一个java.net.ServerSocket在提供服务的端口上监听连接.向客户返回文</p><p>7、本时,可以用PrintWriter,但是如果返回二进制数据,则必须使用OutputStream.write(byte[])方法,返回的应答消息字符串可以使用String.getBytes()方法转换为字节数组返回,或者使用PrintStream的print()方法写入文本,用write(byte[])方法写入二进制数据.  源程序来自http://blog.csdn.net/myeclipse_java,本程序是在原有基础上进行了一些调整,源程序在POST请求时会阻塞,本程序解决了此问题,另外,本程序在原有的基础上增加了文件上传与下载模拟功能: Java代码</p><p>8、import java.io.File;  impo</p> </div> <div class="mt-3 bg-white"> <div class="d-lg-block d-none px-3 px-lg-4 py-3 border-bottom text-center font-18"> 当前文档最多预览五页,下载文档查看全文 </div> <div class="detail-fixed-feature d-none d-lg-block" id="detailFixedFeatureBox"> <div class="px-3 px-lg-4 py-3 d-flex align-items-center justify-content-between fixed-feature-box" id="detailFixedFeature"> <div class="d-lg-flex d-none align-items-center"> <div> <a class="btn btn-outline-danger article-state" href="javascript:;" data-id="6075191" data-code="438274" data-title="java_socket服务器给浏览器发信息(1)"> <span>侵权申诉</span> </a> <button type="button" class="btn btn-outline-secondary with-light ml-2" data-toggle="modal" data-target="#reportModal" data-id="6075191"><span>举报</span></button> </div> <nav class="d-flex align-items-center ml-4" id="anchorPoint"> <a href="javascript:;" class="btn btn-light anchor-pre px-2"><i class="iconfont text-muted"></i></a> <div class="text-muted mb-0 pre-point-list" id="prePointList"> <a class="px-2 active nav-link" href="#anchorImg0">1</a> <a class="px-2 nav-link" href="#anchorImg1">1</a> <a class="px-2 nav-link" href="#anchorImg2">2</a> <a class="px-2 nav-link" href="#anchorImg3">3</a> <a class="px-2 nav-link" href="#anchorImg4">4</a> <a class="px-2 nav-link" href="#anchorImg5">5</a> / <span class="px-2" id="prePageNums">32</span> </div> <a href="javascript:;" class="btn btn-light anchor-next px-2"><i class="iconfont text-muted"></i></a> </nav> </div> <div class="d-flex align-items-center"> <p class="d-lg-block d-none font-14 text-black-50 mb-0 mr-2">此文档下载收益归作者所有</p> <button class="btn btn-danger detail-download-btn px-3 ml-0 font-16" data-btn="downloadfile" style="width:128px;height:40px;" data-id="6075191" data-price="2000" data-size="315.00 KB" data-page="32页" data-type="doc" data-binddown="true" data-isold="new_content" data-vip="0" data-title="java_socket服务器给浏览器发信息(1)">下载文档</button> </div> </div> </div> </div> <div class="d-block d-lg-none px-3 px-lg-4 py-3 border-bottom text-center font-14" style="color:#999">当前文档最多预览五页,下载文档查看全文</div> <button class="btn d-block w-100 d-lg-none btn-danger detail-download-btn px-3 ml-0 font-16" data-btn="downloadfile" data-id="6075191" data-price="2000" data-size="315.00 KB" data-page="32页" data-type="doc" data-binddown="true" data-isold="new_content" data-vip="0" data-title="java_socket服务器给浏览器发信息(1)">点击下载本文档 </button> </div> <div class="px-3 px-lg-4 py-3 bg-white mt-3"> <ul class="nav custom-tab border-bottom" id="myTab" role="tablist"> <li class="nav-item" role="presentation"> <a class="nav-link active px-0 mr-4 font-16 font-weight-light pb-3" id="tips-tab" data-toggle="tab" href="#showTips" role="tab" aria-controls="showTips" aria-selected="true">版权提示</a> </li> <li class="nav-item" role="presentation"> <a class="nav-link px-0 pb-3 font-16 font-weight-light text-black-50" href="/d-6075191.html" >下载文档</a> </li> <dl class="flex-grow-1 mb-0 d-lg-none"> <li class="ml-3 float-right d-lg-none"> <button type="button" class="btn btn-light" data-toggle="modal" data-target="#reportModal" data-id="6075191"><span>举报</span></button> </li> </dl> </ul> <div class="tab-content with-content pt-3" id="myTabContent"> <div class="tab-pane fade show active font-14" id="showTips" role="tabpanel" aria-labelledby="showTips-tab"> 温馨提示: <br> 1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。<br> 2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。<br> 3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。<br> 4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。 <br> </div> </div> </div> </div> <div class="detail-sidebar d-none d-lg-block"> <div id="columnDetailSiderRight"> <div class="detail-yourlike mt-0 pb-2" id="relativeArticle"> <div class="border-bottom py-2 d-flex align-items-center justify-content-between"> <h5 class="font-16">相关文章</h5> <a class="font-14 hover-letter-spacing" href="/ucenter/search/index.html?text=java_socket服务器给浏览器发信息(1)" target="_blank" rel="nofollow">更多<i class="iconfont font-12 pl-1"></i></a> </div> <ul class="font-14 like-list"> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-6684363.html" title="b/s(浏览器/服务器)项目" target="_blank">b/<span class="text-danger">s</span><span class="text-danger">(</span><span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span>/<span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span>)项目</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-15154497.html" title="总结java_socket编程" target="_blank">总结<span class="text-danger">j</span><span class="text-danger">a</span><span class="text-danger">v</span><span class="text-danger">a</span><span class="text-danger">_</span><span class="text-danger">s</span><span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span>编程</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-21333804.html" title="java_socket服务器给浏览器发信息(1)" target="_blank"><span class="text-danger">j</span><span class="text-danger">a</span><span class="text-danger">v</span><span class="text-danger">a</span><span class="text-danger">_</span><span class="text-danger">s</span><span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span><span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span><span class="text-danger">给</span><span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span><span class="text-danger">发</span><span class="text-danger">信</span><span class="text-danger">息</span><span class="text-danger">(</span><span class="text-danger">1</span><span class="text-danger">)</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-21720165.html" title="java-socket服务器给浏览器发信息" target="_blank"><span class="text-danger">j</span><span class="text-danger">a</span><span class="text-danger">v</span><span class="text-danger">a</span>-<span class="text-danger">s</span><span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span><span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span><span class="text-danger">给</span><span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span><span class="text-danger">发</span><span class="text-danger">信</span><span class="text-danger">息</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-21781232.html" title="java-socket服务器给浏览器发信息" target="_blank"><span class="text-danger">j</span><span class="text-danger">a</span><span class="text-danger">v</span><span class="text-danger">a</span>-<span class="text-danger">s</span><span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span><span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span><span class="text-danger">给</span><span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span><span class="text-danger">发</span><span class="text-danger">信</span><span class="text-danger">息</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-22164623.html" title="javasocket服务器给浏览器发信息(1)" target="_blank"><span class="text-danger">j</span><span class="text-danger">a</span><span class="text-danger">v</span><span class="text-danger">a</span><span class="text-danger">s</span><span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span><span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span><span class="text-danger">给</span><span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span><span class="text-danger">发</span><span class="text-danger">信</span><span class="text-danger">息</span><span class="text-danger">(</span><span class="text-danger">1</span><span class="text-danger">)</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-22800351.html" title="javasocket服务器给浏览器发信息(1)" target="_blank"><span class="text-danger">j</span><span class="text-danger">a</span><span class="text-danger">v</span><span class="text-danger">a</span><span class="text-danger">s</span><span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span><span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span><span class="text-danger">给</span><span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span><span class="text-danger">发</span><span class="text-danger">信</span><span class="text-danger">息</span><span class="text-danger">(</span><span class="text-danger">1</span><span class="text-danger">)</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-ppt" href="/p-39066394.html" title="从服务器到浏览器" target="_blank">从<span class="text-danger">服</span><span class="text-danger">务</span><span class="text-danger">器</span>到<span class="text-danger">浏</span><span class="text-danger">览</span><span class="text-danger">器</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-ppt" href="/p-49296859.html" title="JAVA_Socket编程.ppt" target="_blank">JAVA<span class="text-danger">_</span>S<span class="text-danger">o</span><span class="text-danger">c</span><span class="text-danger">k</span><span class="text-danger">e</span><span class="text-danger">t</span>编程.pp<span class="text-danger">t</span></a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-docx" href="/p-62250239.html" title="给老师发信息请假条.docx" target="_blank"><span class="text-danger">给</span>老师<span class="text-danger">发</span><span class="text-danger">信</span><span class="text-danger">息</span>请假条.d<span class="text-danger">o</span><span class="text-danger">c</span>x</a> </li> </ul> </div> <div class="detail-yourlike pb-2"> <div class="border-bottom py-2"> <h5 class="font-16">相关标签</h5> </div> <ul class="font-14 like-list d-flex flex-wrap"> </ul> </div> <script src="/d/js/acmsd/thea1.js"></script> </div> </div> </div> <footer> <div class="container d-none d-lg-block mb-4"> <div class="d-flex justify-content-between footer-nav"> <ul class="d-flex foot-nav"> <li> <h5>常见问题</h5> <a class=text-decoration-none href=/help/wenti/upload/ target=_blank> 关于上传 </a><a class=text-decoration-none href=/help/wenti/xiazai/ target=_blank> 关于下载 </a><a class=text-decoration-none href=/help/wenti/qinquan/ target=_blank> 关于侵权 </a><a class=text-decoration-none href=/help/wenti/fenxaing/ target=_blank> 分享文档赚钱教程 </a> </li> <li> <h5>关于我们</h5> <a class=text-decoration-none href=/help/about/wzjs/ target=_blank> 网站介绍 </a><a class=text-decoration-none href=/help/about/gywm/ target=_blank> 关于我们 </a><a class=text-decoration-none href=/help/about/lxwm/ target=_blank> 联系我们 </a> </li> <li> <h5>版权问题</h5> <a class=text-decoration-none href=/help/banquan/bqsm/ target=_blank> 版权声明 </a><a class=text-decoration-none href=/help/banquan/qqcl/ target=_blank> 侵权处理 </a><a class=text-decoration-none href=/help/banquan/mzsm/ target=_blank> 免责声明 </a> </li> <li> <h5>协议条款</h5> <a class=text-decoration-none href=/help/xieyi/yhxy/ target=_blank> 用户协议 </a><a class=text-decoration-none href=/help/xieyi/fwtk/ target=_blank> 用户服务条款 </a><a class=text-decoration-none href=/help/xieyi/ysbh/ target=_blank> 用户隐私保护 </a> </li> <li> <h5>网站导航</h5> <a class="text-decoration-none help-nav-item" href="/sitemaps.xml" data-name="网站地图" target="_blank">网站地图</a> <a class="text-decoration-none help-nav-item" href="/list.html" data-name="全部分类" target="_blank">全部分类</a> <a class="text-decoration-none help-nav-item" href="/sitemaps/index.html" data-name="资源地图" target="_blank">资源地图</a> </li> </ul> <div class="foot-qrcode d-flex"> <div> <div class="subsitute-bg"><img src="https://www.wenku365.com/d/file/2022/07-08/f23df57d987ef7ad9acb33fe5abf9854.jpg"></div> <p>关注公众号<br></p> </div> </div> </div> </div> <div class="footer-copyright"> <p><a href="/" target="_blank">天天文库</a>站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】。</p> <p>本站是网络服务平台方,若您的权利被侵害,侵权客服QQ:3074922707 欢迎举报。</p> <p>Copyright 2004-2021 <a href="https://www.wenku365.com/" target="_blank">wenku365.com</a> All Rights Reserved <a href="https://beian.miit.gov.cn/#/Integrated/index" rel="nofollow" target="_blank">闽ICP备15016911号-5 </a></p> <p>闽公网安备 <a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=35052402000320" rel="nofollow" target="_blank">35052402000320</a></p> <p> <a href="https://www.wenku365.com/zt.html" target="_blank">专题文集</a> <a href="https://www.wenku365.com/zt-90007.html" target="_blank">丨职业培训</a> <a href="https://www.wenku365.com/zt-90005.html" target="_blank">丨实用范文</a> <a href="https://www.wenku365.com/zt-90010.html" target="_blank">丨商业材料</a> <a href="https://www.wenku365.com/zt-90013.html" target="_blank">丨合同协议</a> <a href="https://www.wenku365.com/zt-90009.html" target="_blank">丨PPT专题</a></p> </div> </footer> <script src="//static.wenku365.com/wenku365/js/global.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/clipboard.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/jquery.treeview.js?"></script> <script src="//static.wenku365.com/wenku365/js/jquery.share.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/common.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/downloadFile.js?"></script> <script src="//static.wenku365.com/wenku365/js/loginWindow.js?"></script> <script src="//static.wenku365.com/wenku365/js/windowRecharge.js?"></script> <script src="//static.wenku365.com/wenku365/js/viewer.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/detail.js?"></script> <!-- 2023-05-06 17:41:13 --> </body> </html>