func (s *AEServer) HandleTokenInfoRequest(c context.Context, w *osin.Response, r *http.Request) *TokenInfoRequest { r.ParseForm() token := r.Form.Get("access_token") if token == "" { w.SetError(osin.E_INVALID_REQUEST, "") return nil } ret := &TokenInfoRequest{ AccessToken: token, } var err error ret.AccessData, err = s.storage.LoadAccess(c, ret.AccessToken) if err != nil { w.SetError(osin.E_INVALID_REQUEST, "") w.InternalError = err return nil } if ret.AccessData == nil { w.SetError(osin.E_INVALID_REQUEST, "") return nil } if ret.AccessData.Client.GetRedirectUri() == "" { w.SetError(osin.E_UNAUTHORIZED_CLIENT, "") return nil } if ret.AccessData.IsExpiredAt(s.server.Now()) { w.SetError(osin.E_UNAUTHORIZED_CLIENT, "") return nil } return ret }