コード例 #1
0
        public async Task <IActionResult> GetGaUserId(string clientId)
        {
            if (!clientId.IsGuid())
            {
                return(BadRequest(ErrorResponse.Create($"Invalid {nameof(clientId)} value")));
            }

            var gaUser = await _gaUserService.GetGaUserAsync(clientId);

            if (gaUser == null)
            {
                return(NotFound());
            }

            return(Json(gaUser.TrackerUserId));
        }
コード例 #2
0
        private async Task FillGaHitAsync(GaBaseHit model)
        {
            GaUser gaUser = await _gaUserService.GetGaUserAsync(model.UserId, model.Cid);

            model.UserId     = gaUser.TrackerUserId;
            model.Cid        = gaUser.Cid;
            model.TrackingId = _gaSettings.ApiKey;

            model.Traffic = await _gaUserService.GetGaUserTrafficAsync(gaUser.ClientId);

            var deviceInfo = new DeviceInfo();

            deviceInfo.ParseUserAgent(model.UserAgent);
            deviceInfo.ParseClientInfo(model.ClientInfo);

            model.UserAgent        = deviceInfo.GetUserAgentString();
            model.ScreenResolution = deviceInfo.ScreenResolution;
            model.AppVersion       = deviceInfo.AppVersion;
        }