53 lines
1.0 KiB
Go
53 lines
1.0 KiB
Go
|
|
package main
|
|||
|
|
|
|||
|
|
import (
|
|||
|
|
"flag"
|
|||
|
|
"net/http"
|
|||
|
|
"os"
|
|||
|
|
|
|||
|
|
"github.com/gin-gonic/gin"
|
|||
|
|
"yyjishu.com/rubbish-class/admin"
|
|||
|
|
"yyjishu.com/rubbish-class/app"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
var (
|
|||
|
|
endpoint = flag.String("s", "localhost:8080", "service endpoint")
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
func main() {
|
|||
|
|
flag.Parse()
|
|||
|
|
|
|||
|
|
//启动时检查与创建文件夹video,用于存放用户上传的视频文件
|
|||
|
|
_, err := os.Stat("video")
|
|||
|
|
if err != nil {
|
|||
|
|
if os.IsNotExist(err) {
|
|||
|
|
os.Mkdir("./video", os.ModePerm)
|
|||
|
|
os.Chmod("./video", 0755)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
r := gin.Default()
|
|||
|
|
|
|||
|
|
r.Use(gin.Recovery())
|
|||
|
|
r.StaticFS(`/video`, http.Dir("./video"))
|
|||
|
|
|
|||
|
|
authorized := r.Group(`/admin`, gin.BasicAuth(gin.Accounts{
|
|||
|
|
"foo": "bar",
|
|||
|
|
"admin": "admin",
|
|||
|
|
}))
|
|||
|
|
{
|
|||
|
|
authorized.GET(`/index`, admin.HomeHandle)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
appGroup := r.Group(`/app`)
|
|||
|
|
{
|
|||
|
|
appGroup.POST(`/index`, app.Indexhandle)
|
|||
|
|
appGroup.GET(`/code2session/:jscode`, app.Code2SessionHandler)
|
|||
|
|
appGroup.POST(`/upload`, app.UploadHandler)
|
|||
|
|
appGroup.POST(`/uploadvideo`, app.UploadfileAndFormHandler)
|
|||
|
|
appGroup.GET(`/history/:openid`, app.HistoryVideoHandler)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
r.Run(*endpoint)
|
|||
|
|
}
|