go web

接口抽象

MVC

  • 流行的Web框架大多数是MVC框架,现在更为流行的一般是前后分离的架构。可以认为前后分离是把V层从MVC中抽离单独成为项目。这样一个后端项目一般就只剩下 M和C层了。前后端之间通过ajax来交互
  • 在这里插入图片描述go web_第1张图片
  • 对于复杂的项目,一个C和一个M层显然是不够用的,现在比较流行的纯后端API模块一般采用下述划分方法:在这里插入图片描述

validator请求校验结构体(打tag)

httprouter

  • 如果两个路由拥有一致的http方法(指 GET/POST/PUT/DELETE)和请求路径前缀,且在某个位置出现了A路由是wildcard(指:id这种形式)参数,B路由则是普通字符串,那么就会发生路由冲突。路由冲突会在初始化阶段直接panic在这里插入图片描述
  • httprouter还可以支持号来进行通配,不过号开头的参数只能放在路由的结尾
    go web_第2张图片

你可能感兴趣的:(面试,go学习,web,golang,面试)