在 HTTP
刚诞生的年代,人们只是使用它来发送静态的在线文档,但是随着用户需求的驱动,静态的资源已经无法满足人们的需求了,人们更加期望的是在 Web
上发布复杂的资源。
所以,为了解决这个问题,就提出了网关的概念。
什么是网关
网关,抽象出了一种能够到达资源的方法,它是资源和应用程序之间的粘合剂。
应用程序可以通过 HTTP
请求网关来处理某条请求,网关可以提供一条响应。不仅如此,网关还可以向数据库发送查询语句,或者生成动态的内容。
那么,从上面的描述来看,网关既能处理请求,又能返回响应,这不是服务器的工作吗?
但是,网关具有一种转换协议的功能,看下面的示例:
(示例来源于 《HTTP权威指南》)
在 a 图中,网关收到了对 FTP URL
的 HTTP
请求,然后网关打开 FTP
连接并向 FTP
服务器发布指令,最后将文档返回给客户端。这里就是将客户端发来的 HTTP
请求转换为 FTP
发送给服务器了。