本文整理匯總了Golang中github.com/peachdocs/peach/modules/middleware.Context.Error方法的典型用法代碼示例。如果您正苦於以下問題:Golang Context.Error方法的具體用法?Golang Context.Error怎麽用?Golang Context.Error使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/peachdocs/peach/modules/middleware.Context
的用法示例。
在下文中一共展示了Context.Error方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Hook
func Hook(ctx *middleware.Context) {
if ctx.Query("secret") != setting.Docs.Secret {
ctx.Error(403)
return
}
log.Info("Incoming hook update request")
if err := models.ReloadDocs(); err != nil {
ctx.Error(500)
return
}
ctx.Status(200)
}
示例2: DocsStatic
func DocsStatic(ctx *middleware.Context) {
if len(ctx.Params("*")) > 0 {
f, err := os.Open(path.Join(models.Tocs[setting.Docs.Langs[0]].RootPath, "images", ctx.Params("*")))
if err != nil {
ctx.JSON(500, map[string]interface{}{
"error": err.Error(),
})
return
}
defer f.Close()
_, err = io.Copy(ctx.Resp, f)
if err != nil {
ctx.JSON(500, map[string]interface{}{
"error": err.Error(),
})
return
}
return
}
ctx.Error(404)
}
示例3: Protect
func Protect(ctx *middleware.Context) {
if !models.Protector.HasProtection {
return
}
// Check if resource is protected.
allows, yes := models.Protector.Resources[strings.TrimPrefix(ctx.Req.URL.Path, "/docs/")]
if !yes {
return
}
// Check if auth is presented.
authHead := ctx.Req.Header.Get("Authorization")
if len(authHead) == 0 {
authRequired(ctx)
return
}
auths := strings.Fields(authHead)
if len(auths) != 2 || auths[0] != "Basic" {
ctx.Error(401)
return
}
uname, passwd, err := basicAuthDecode(auths[1])
if err != nil {
ctx.Error(401)
return
}
// Check if auth is valid.
if models.Protector.Users[uname] != encodeMd5(passwd) {
ctx.Error(401)
return
}
// Check if user has access to the resource.
if !allows[uname] {
ctx.Error(403)
return
}
}
示例4: authRequired
func authRequired(ctx *middleware.Context) {
ctx.Resp.Header().Set("WWW-Authenticate", "Basic realm=\".\"")
ctx.Error(401)
}