Я использую java для чтения идентификатора сеанса, в нашем случае это «clientId». Я получаю хороший ответ обратно. Где, когда я использую python, я не получаю результаты. Ниже приведен код.
python код
Python Код, который не возвращает никаких результатов при использовании clientId в измерениях. Другие измерения дают результаты. Пример импорта googleapiclient.
from googleapiclient.discovery import build
# Build the service object.
analytics = build('analyticsreporting', 'v4', credentials=credentials)
return analytics.reports().batchGet(
body={
"reportRequests": [
{
"viewId": VIEW_ID,
"dateRanges": [{"startDate": "7daysAgo", "endDate": "today"}],
"dimensions":[{"name": "ga:userType"}, {"name": "ga:clientId"}],
"metrics": [{"expression": "ga:pageViews"}, {"expression": "ga:sessions"}, {"expression":
"ga:newUsers"}]
}]
}
).execute()
java код
Java Код, который возвращает идентификатор сеанса (clientId), пример соответствующих импортов
import com.google.api.services.analyticsreporting.v4.AnalyticsReportingScopes;
import com.google.api.services.analyticsreporting.v4.AnalyticsReporting;
Dimension pageTitle = new Dimension().setName("ga:pagePath");
Dimension userType = new Dimension().setName("ga:userType");
Dimension clientId = new Dimension().setName("ga:clientId");
List<Dimension> lstDim = new ArrayList<Dimension>();
lstDim.add(userType);
lstDim.add(pageTitle);
lstDim.add(clientId);
// Create the ReportRequest object.
ReportRequest request = new ReportRequest()
.setViewId(VIEW_ID)
.setDateRanges(Arrays.asList(dateRange))
.setMetrics(lstMetrics)
.setDimensions(lstDim);
ArrayList<ReportRequest> requests = new ArrayList<ReportRequest>();
requests.add(request);
// Create the GetReportsRequest object.
GetReportsRequest getReport = new GetReportsRequest()
.setReportRequests(requests);
// Call the batchGet method.
GetReportsResponse response = service.reports().batchGet(getReport).execute();