温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

beego设置静态路由的几种方法

发布时间:2020-04-02 01:14:37 来源:网络 阅读:1420 作者:梁十八 栏目:编程语言

方法一:

main.go里:

beego.SetStaticPath("tests_url", "tests") //第一个是访问的路径,第二个是根下目录

方法二:

package main

import (
    _ "./routers"
    "github.com/astaxie/beego"
    "github.com/astaxie/beego/context" //注意:是这个context
    "log"
    "net/http"
    "strings"
)

func ignoreStaticPath() {
    //过滤器
    beego.InsertFilter("/", beego.BeforeRouter, TransparentStatic)
    beego.InsertFilter("/*", beego.BeforeRouter, TransparentStatic)
}

func TransparentStatic(ctx *context.Context){
    orpath := ctx.Request.URL.Path
    log.Println(orpath)
    //如果url中有api,则取消静态路由重定向
    if strings.Index(orpath, "api") >= 0 {
        return
    }
    http.ServeFile(ctx.ResponseWriter, ctx.Request, "static/html/" + orpath)
}

func main() {
    ignoreStaticPath()
    beego.Run()
}

注意:导入的是github.com/astaxie/beego/context,而不是context

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI