MCPcopy Create free account
hub / github.com/pydio/cells / FrontSessionGet

Method FrontSessionGet

frontend/rest/rest.go:180–205  ·  view source on GitHub ↗

FrontSessionGet loads a cookie-based session to get info about an access token

(req *restful.Request, rsp *restful.Response)

Source from the content-addressed store, hash-verified

178
179// FrontSessionGet loads a cookie-based session to get info about an access token
180func (a *FrontendHandler) FrontSessionGet(req *restful.Request, rsp *restful.Response) error {
181
182 dao, err := manager.Resolve[sessions.DAO](req.Request.Context())
183 if err != nil {
184 return err
185 }
186
187 session, err := dao.GetSession(req.Request)
188 if err != nil {
189 return err
190 }
191 if session == nil {
192 return errors.WithMessage(errors.StatusInternalServerError, "cannot instantiate session")
193 }
194
195 response := &rest.FrontSessionGetResponse{}
196 if len(session.Values) > 0 {
197 response.Token = &pauth.Token{
198 AccessToken: session.Values["access_token"].(string),
199 IDToken: session.Values["id_token"].(string),
200 ExpiresAt: session.Values["expires_at"].(string),
201 }
202 }
203
204 return rsp.WriteEntity(response)
205}
206
207// FrontSession initiate a cookie-based session based on a LoginRequest
208func (a *FrontendHandler) FrontSession(req *restful.Request, rsp *restful.Response) error {

Callers

nothing calls this directly

Calls 2

ContextMethod · 0.65
GetSessionMethod · 0.65

Tested by

no test coverage detected