日期:2014-05-20  浏览次数:20778 次

求教 web程序的运行机制
当客户端发出一个请求,这个请求被怎么处理,在服务器端怎么被处理,数据验证在哪进行等等这类问题。具体表达不清楚,请专家扩散的讲一下。谢谢。我在网络上都找不到这类答案,以前只知道编码,对这类问题没理解。

------解决方案--------------------
了解下http吧!
然后看看基础的servlet,jsp!
特别是request,response!
------解决方案--------------------
问题有点大

1 如果你不熟悉http协议,会无法知道内部的许多事情

2 当客户端发出一个请求,这个请求被怎么处理,
浏览器会将请求根据GET/POST 封装为http协议的格式,然后打开socket链接服务器,并把数据发送到OutputStream 里面,
然后从InputStream 读取服务器的返回数据


3 在服务器端怎么被处理
服务器的ServerSocket 接收到连接,从InputStream读取请求的http协议内容
然后转发到对应的服务进行处理,一般是servlet/Filter之类的
他们的处理结果将通过OutputStream返回给调用者

4 数据验证在哪进行
一个在Filter里面
一个在你的servlet里面,也就是你的应用里面


------解决方案--------------------
建议看一下cgi的实现,用c来做……
web服务器上运行的东西,asp,php啥的,其实都是在cgi基础上派生出来的
------解决方案--------------------
看 tomcat 的源代码