diff --git a/controllers/casbin_api.go b/controllers/casbin_api.go index 4d72f9bb..cede5b76 100644 --- a/controllers/casbin_api.go +++ b/controllers/casbin_api.go @@ -37,6 +37,11 @@ func (c *ApiController) Enforce() { resourceId := c.Input().Get("resourceId") enforcerId := c.Input().Get("enforcerId") + if len(c.Ctx.Input.RequestBody) == 0 { + c.ResponseError("The request body should not be empty") + return + } + var request object.CasbinRequest err := json.Unmarshal(c.Ctx.Input.RequestBody, &request) if err != nil { diff --git a/routers/base.go b/routers/base.go index 997d1d99..d92572ed 100644 --- a/routers/base.go +++ b/routers/base.go @@ -190,5 +190,5 @@ func isHostIntranet(s string) bool { return false } - return ip.IsPrivate() + return ip.IsPrivate() || ip.IsLoopback() || ip.IsLinkLocalUnicast() || ip.IsLinkLocalMulticast() }