示例#1
0
 void Awake()
 {
     if (instance)
     {
         DestroyImmediate(gameObject);
         return;
     }
     instance = this;
     DontDestroyOnLoad(gameObject);
 }
        public object Callback([FromQuery] AuthResponse authResponse)
        {
            _logger.LogInformation("code:" + authResponse.Code + " " + "state:" + authResponse.State);
            BaseResponse <TokenResponse> tokenResponse = _oauth.GetAccessToken(authResponse.Code);

            if (!tokenResponse.IsSuccess())
            {
                _context.Response.StatusCode = StatusCodes.Status401Unauthorized;
                return(StringResponse.Create(40100, "failed to get token"));
            }
            BaseResponse <ValidateResponse> validateResponse = _oauth.Validate(tokenResponse.Data?.AccessToken);

            if (!validateResponse.IsSuccess())
            {
                _context.Response.StatusCode = StatusCodes.Status401Unauthorized;
                return(StringResponse.Create(40100, "invalid token"));
            }
            return(InfoAPI.GetInstance().GetStudentInfo(validateResponse.Data?.AccessToken));
        }