WeMVC Go MVC框架

我要开发同款
匿名用户2016年07月28日
20阅读
所属分类Google Go、Web应用开发、Web框架
授权协议Apache

作品详情

WeMVC是一个用go语言开发的简单的高性能MVC框架。它有以下特色:

全新的路由算法,性能超棒。支持路由变量自定义验证(routeparametervalidation),支持默值设置。示例:wemvc.Route("/blog/<year:int(4)>-<month:int(1~2)>-<day:int(1~2)>/<title>",blogController{})wemvc.Route("/test/<company>/<uid:int>/<department=admin>/<title=manager>",TestController{},"Route_Data").特有的Action处理方式:Action方法名的处理采用[HttpMethod]+[ActionName]方式。例如程序中有个路由规则wemvc.Route("/user/<action>",User{})。当以GET方式访问https://localhost:8080/user/login时,路由器捕捉到HttpMethod是Get,Action是login,所以执行的方法是GetLogin()。而当POST提交表单时,路由器捕捉到HttpMethod是Post,Action是login,然后执行方法PostLogin()。如果无法找到GetLogin或PostLogin,则执行方法Login();View借鉴beego框架处理方式,将View编译缓存到内存,实时监控view文件的变化,提高View渲染性能;友好的WebAPI处理,支持多种输出格式JSON,XML,JSONP等支持Session支持Filter支持Cache支持Area支持自定义错误(如404)处理自动监视文件改动,当配置文件改动之后自动加载到服务器中

示例:

packagemainimport"github.com/Simbory/wemvc"typeHomeControllerstruct{wemvc.Controller}func(thisHomeController)Index()wemvc.ActionResult{returnthis.Content("helloworld!<br/><ahref=\"/about\">About</a>","text/html")}func(thisHomeController)GetAbout()wemvc.ActionResult{obj:=make(map[string]interface{})obj["routeData"]=this.RouteDataobj["headers"]=this.Request.Headerreturnthis.Json(obj)}funcinit(){wemvc.Route("/",HomeController{})wemvc.Route("/<action>",HomeController{})}funcmain(){wemvc.Run(8080);}

另一个更加完整的的示例:

https://github.com/Simbory/wemvc-sample

 

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论