package filter import ( "app.yhyue.com/moapp/jybase/go-xweb/xweb" "net/http" "strings" ) // 登录限制 type sessionfilter struct { App *xweb.App } // 继承过滤器方法 func (l *sessionfilter) Do(w http.ResponseWriter, req *http.Request) bool { session := l.App.SessionManager.Session(req, w) rul := req.URL.Path if strings.HasPrefix(rul, "/jydocs/search") || strings.HasPrefix(rul, "/jydocs/search") || strings.HasPrefix(rul, "/jydocs/detail") || strings.HasPrefix(rul, "/jydocs/detail/recommend") || strings.HasPrefix(rul, "/jydocs/topList") || strings.HasPrefix(rul, "/jydocs/activityList") || strings.HasPrefix(rul, "/jydocs/getAdvertisement") || strings.HasPrefix(rul, "/jydocs/indexTag") || strings.HasPrefix(rul, "/jydocs/share/img") || strings.HasPrefix(rul, "/jydocs/user/info") || strings.HasPrefix(rul, "/jydocs/docRecommend") { return true } if session.Get("userId") == nil { w.Write([]byte("{\"error\":\"需要登录!\"}")) return false } return true }