一.问题提出 在进行网关引擎开发时,获取到一个http请求的inputstream后,可能要多次利用它进行read操作.由于流读过一次就不能再读了,所以需要实现InputStream的复制. 而InputStream对象本身不能复制,因为它没有实现Cloneable接口. 二.解决方案 1.方案一:使用ByteArrayOutputStream<->InputStream 此时,可以先把InputStream转化成ByteArrayOutputStream,后面要使用InputStream对象…
一:聊天室  聊天室的种类有很多,免费的聊天室也有很多,这些聊天室的ASP源码从网上都可以下载得到,我们就以毒爱聊天室为版本来教大家做.好,大家先下载毒爱聊天室,当然,本站软件下载里就有下载,下载的是一个RAR压缩包,在你的硬盘上先建一个目录,然后就其解压到这个目录里面,你会在目录里面看到很多的程序代码,不要管它.下面,打开IIS,将刚刚我跟你们说的主目录指定到这个文件夹内,然后点击确定,这下行了,打开你的IE,键入你刚刚申请的域名,你看到什么了,对,你的聊天室出来了,这时你的聊天灾室就可以用了…
学习知识很简单,但坚持不懈却又是如此的困难,即使一直对自己说"努力,不能停下"的我也慢慢懈怠了... 闲话不多说,本篇将讲述TCP/IP协议栈的链路层.在本系列第一篇我讲到,TCP/IP协议栈每一层都有特定的功能, 那么链路层的功能如下: (1). 为IP模块发送和接收数据包 (2). 为ARP模块发送ARP请求和接收ARP应答 (3). 为RARP发送RARP请求和接收RARP应答 1.ARP, RARP协议概述 ARP协议即地址解析协议, 通过该协议应用层可以通过IP地址查询到目的…
http请求和响应报文内容比较多,会分为大概四部分更新,最近比较忙,没太多时间整理- - 首先来看看报文结构吧 1.http请求报文 http请求报文由方法.URI.http版本.http首部字段等构成 下面给大家示例一个访问my_view_page.php的请求报文首部信息 GET /my_view_page.php HTTP/1.1 Host: 10.0.17.183:8000 Connection: keep-alive Cache-Control: max-age=0 Upgrade-I…
一.什么是chunked编码? 分块传输编码(Chunked transfer encoding)是只在HTTP协议1.1版本(HTTP/1.1)中提供的一种数据传送机制.以往HTTP的应答中数据是整个一起发送的,并在应答头里Content-Length字段标识了数据的长度,以便客户端知道应答消息的结束. 传统的Content-length解决方案:计算实体长度,并通过头部告诉对方.浏览器可以通过 Content-Length 的长度信息,判断出响应实体已结束 Content-length面临的…
一.概念和原理 1.什么是MIME类型? MIME类型,即多用途互联网邮件扩展,它是一个互联网标准,在1992年最早应用于电子邮件系统,但后来也应用到浏览器. 服务器会将它们发送的多媒体数据的类型告诉客户端,通知手段就是说明该多媒体数据的MIME类型,客户端根据MIME类型知道接收到的信息哪些是MP3文件,哪些是Shockwave文件等等,采用相应插件处理接收的数据. 2.MIME类型的引入 最早的HTTP协议没有附加数据类型信息,所有传送数据都被客户程序解释为HTML文档.为了支持多媒体数据类…
一.请求报头和响应报头列表 1.Requests 头列表 Header 解释 示例 Accept 指定客户端能够接收的内容类型 Accept: text/plain, text/html Accept-Charset 浏览器可以接受的字符编码集. Accept-Charset: iso-8859-5 Accept-Encoding 指定浏览器可以支持的web服务器返回内容压缩编码类型. Accept-Encoding: compress, gzip Accept-Language 浏览器可接受的…
一.HTTP请求方法 Http协议定义了很多与服务器交互的方法,最基本的有4种,分别是GET,POST,PUT,DELETE. 一个URL地址用于描述一个网络上的资源,而HTTP中的GET, POST, PUT, DELETE就对应着对这个资源的查,改,增,删4个操作. 我们最常见的就是GET和POST了.GET一般用于获取/查询资源信息,而POST一般用于更新资源信息. 1.GET - 最常见的一种请求方式 当客户端要从服务器中读取文档时,当点击网页上的链接或者通过在浏览器的地址栏输入网址来浏…
一.HTTP协议的概念 1.引子  - 从url开始 URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下 schema://host[:port#]/path/.../[?query-string][#anchor] scheme 指定低层使用的协议(例如:http, https, ftp) host HTTP服务器的IP地址或者域名 port# HTTP服务器的默认端口是80,这种情况下端口号可以省略.如果使用了别的端口,必须指明,例如 h…
想学习TLS协议最好的方法应该是去看RFC,但如果对安全传输协议没有一些基本认识的人很难一上来就读懂RFC里面的种种细节和设计原则,所以这里为了能够进一步去弄懂TLS协议,把一些基本的知识放在这里,算是扫下盲. 1. TLS与SSL的区别:SSL是TLS的前身,TLS做出了一些使其更安全的改进.事实上,在客户端向服务器发起连接请求时,会附上的所支持的协议版本:这里的协议版本标识了是SSL或TLS(3.1为TLS) 2. TLS在真正传输过程中使用对称加密,因为对称加密效率更高.而对称加密所使用的…