api和gataway

在这个框架充斥的年代,这个话题似乎没啥意义。我只是希望大家在使用框架的同时,不要忘记了解技术的原理,以至于遇到问题手足无措。其实我本人比较反框架的,因为大多数人容易陷入框架的细节,而忘记事情的本质。本文要实现的框架,虽说简单,但应用在日常项目还是绰绰有余的,而且可能会简单一些。文章有点长,后面有干货,稍微有点耐性哦~

首先我们探讨一下后台api的基本原理。当我们前端发起一个http请求,到达服务器,服务器对请求进行处理,返回处理结果。这个过程中,可能会经过一些代理,比如nginx,然后到达我们的http处理程序,诸如tomcat之类。Http处理程序会通过解析http请求数据,诸如url,参数之类,然后做出响应。关键来了,这里最重要就是对url的处理,然后识别不同的请求,当然你要喜欢也可以通过其他字段进行区分。那么所谓url的处理,其实就是字符串的处理。后台通过对字符串进行解析,然后分发到各个处理模块,诸如controller之类。嗯,所以现在我们要实现的第一步就是这个url的解析。

一般的url都是/xx/xx/xx的格式,现有框架对url的解析,大多都是按目录的,有点类似文件目录系统。这里为了简单,我们不区分目录,直接处理最后一个/后面的内容。实际上一级目录也可以满足所有场景,只要注意不重名就行了。这里还要先做一件事,就是如何拦截这个请求,不同的框架有不同的处理,这里以tomcat为例,我们可以在web.xml注册一个filter。

猜你喜欢

转载自blog.csdn.net/u010196337/article/details/89501369