Golang语言社区--LollipopGO开源项目搭建商城路由分发

时间:2022-05-04
本文章向大家介绍Golang语言社区--LollipopGO开源项目搭建商城路由分发,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

大家好,我是Golang社区主编彬哥,还是要继续社区的开源项目LollipopGO轻量级web框架实战商城。

/*
Golang语言社区(www.Golang.Ltd)
作者:cserli
时间:2018年3月16日
*/
package admin_main

import (
	"LollipopGo/library/lollipop/common" // Assign统一模板的数据
	"fmt"
	"net/http"
)

func Admin(w http.ResponseWriter, req *http.Request) {
	Lcommon.Assign("template/admin/admin.html").Execute(w, "")
	w.Header().Set("Access-Control-Allow-Origin", "*")
	req.ParseForm()
	// 获取函数
	strpath, bpath := req.Form["g"]
	if bpath {
		fmt.Println(strpath[0])
		// 路由分发
		RouteFun(strpath[0])
	} else {

		Lcommon.Assign("template/error.html").Execute(w, "")
	}
	return
}

error.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>"Golang语言社区(Golang.LTD"</title>
</head>

<body>
	<script type="text/javascript">
	   alert("数据错误");
	 </script>
</body>
</html>

路由错误提示:

路由分发:

package admin_main

import (
	_ "fmt"
)

// 路由函数
func RouteFun(data string) {

	switch data {
	case "Account":
		Account()
	default:

	}

}

函数处理

/*
Golang语言社区(www.Golang.Ltd)
作者:cserli
时间:2018年3月16日
*/
package admin_main

import (
	"fmt"
)

// 控制器函数
func Account() {
	fmt.Println("Account()")
	return
}

浏览器访问:

http://127.0.0.1:8866/admin?g=Account

结果: