路由

基本定义

基于gin的分组,实现了分组路由和控制器路由

package main

import (
  "github.com/wike2019/wike_go/src/Web"
)

type IndexController struct {}

func NewIndexController() *IndexController {
	return &IndexController{}
}

//执行函数
func(this *IndexController) Index(ctx *gin.Context) string   {
	return "this is 首页"
}
//实现接口
func(this *IndexController) Name () string   {
	return "IndexController"
}

func(this *IndexController) Build(goft *Web.Goft){
  //注册路由
	goft.Handle("GET","/helloworld",this.Index)
}

func main()  {
	signalChan := make(chan os.Signal, 1)
	app:= Web.New(). //初始化脚手架
		Mount("",NewIndexController()).  //挂载控制器
	go func() {
	   app.Launch()
   }()
  signal.Notify(signalChan, syscall.SIGINT, syscall.SIGTERM)
	//关闭工作
	<-signalChan
}

此时访问地址为 http://127.0.0.1:8180/helloworld

package main

import (
  "github.com/wike2019/wike_go/src/Web"
)

type IndexController struct {}

func NewIndexController() *IndexController {
	return &IndexController{}
}

//执行函数
func(this *IndexController) Index(ctx *gin.Context) string   {
	return "this is 首页"
}
//实现接口
func(this *IndexController) Name () string   {
	return "IndexController"
}

func(this *IndexController) Build(goft *Web.Goft){
  //注册路由
	goft.Handle("GET","/helloworld",this.Index)
}

func main()  {
	signalChan := make(chan os.Signal, 1)
	app:= Web.New(). //初始化脚手架
		Mount("/api",NewIndexController()).  //挂载控制器
	go func() {
	   app.Launch()
   }()
  signal.Notify(signalChan, syscall.SIGINT, syscall.SIGTERM)
	//关闭工作
	<-signalChan
}

此时访问为 http://127.0.0.1:8180/api/helloworld

最后更新于

这有帮助吗?