CGI/MIME/servlet术语解释
Posted wxylog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CGI/MIME/servlet术语解释相关的知识,希望对你有一定的参考价值。
CGI→一种协议, 一种标准, 一种规范
使用CGI协议, 能够让用户访问某些动态资源的时候, 触发web服务器, 让web服务器根据CGI协议能够调用外部(web服务器外部)的程序来执行处理这个动态资源. 这些外部的程序将这些动态资源执行后, 并格式化html文本文件后交由web服务器, web服务器再将其传输给客户端.
通常来说web服务器只能服务于静态页面, 但是用户请求的资源可以是多种多样的. 比如视频, 音频等. 但web服务器只能解释纯文本的html格式的文件, 后来借助于MIME可以解析更多的文档→通过MIME技术和http协议, 将用户请求的各种资源都转换为文本格式进行传输, 传输到客户端后 ,客户端浏览器再通过MIME的各种插件, 将其解释会原来的格式, 即如果是视频,插件在客户端将其还原为视频.
MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准,MIME 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据.
servlet→一种规范, 一种API, 一种使用java语言实现的CGI技术
web服务器只能处理静态页面, 这是事实, 但是当用户请求了一个动态程序, web服务器借助于CGI处理后, 得到一段格式化后的纯文本内容.这段文本内容仅仅是这个动态程序被CGI协议转换后的文本, 它本身是不带有<html><title>这种标签的, CGI技术也实现不了html标签由web服务器提供, 而数据由动态程序提供这种功能. 但是我们知道的是, 浏览器显示某个页面的时候都是有格式的. 比如<html><title></title></html>. 那么CGI转换后纯文本格式发给浏览器后, 浏览器就会无法解析. 因为浏览器只能解析html标签中的内容. 所以说如果一个用户请求了动态资源那么动态资源的解析和为该解析结果添加html标签的工作都统一由后台的程序来提供. 这样带来一个新的问题. 那就是后台程序都是由程序语言开发后进行编译, 然后print出来. 这样如果由于一个标签的问题, 那么就必须重新编译该程序. 这样就非常麻烦. 于是就出现了框架. 比如MVC.
以上是关于CGI/MIME/servlet术语解释的主要内容,如果未能解决你的问题,请参考以下文章