Исключение при использовании GData .NET Analytics API

Я столкнулся с проблемой при попытке получить данные из API GoogleAnalytics для фрагмента кода, который хорошо работал всего пару дней назад.

Для этого я ссылаюсь на следующие библиотеки DLL:

Google.GData.Analytics.dll
Google.GData.Client.dll
Google.GData.Extensions.dll

И я использую следующий код:

Dim visits As String = String.Empty
Dim username As String = "[email protected]"
Dim pass As String = "mypassword"

Const dataFeedUrl As String = "https://www.google.com/analytics/feeds/data"
Dim query As AccountQuery = New AccountQuery()
Dim service As AnalyticsService = New AnalyticsService("MyWebAnalyticsService")
service.setUserCredentials(username, pass)
Dim accountFeed As AccountFeed = service.Query(query) ''----------> Exception thrown in this line: GDataRequestException Execution of request failed: https://www.google.com/analytics/feeds/accounts/default

Я думал, что это связано с блокировкой аккаунта, который я использовал, но это не так, потому что я подтвердил регистрацию сайта для другого аккаунта аналитики и все еще не работает.

Этот код работал безупречно, как я уже говорил, но вчера внезапно прекратил это делать.

Не могли бы вы помочь мне выяснить, что не так? Возможно, изменился способ установки учетных данных пользователя, и я что-то упустил.

Большое спасибо за Вашу помощь.

& APOS;----Update---- Мне удалось заставить его работать, и теперь я могу запросить посещения для желаемого домена. Код выглядит следующим образом:

Dim visits As String = String.Empty
Dim username As String = "[email protected]" 
Dim pass As String = "mypassword"

& apos; следуйте инструкциям наhttps://developers.google.com/analytics/resources/articles/gdata-migration-guide (Создайте проект в консоли API Google), чтобы сгенерировать ключ & gt; после того, как он у вас есть, установите его как часть строки запроса, чтобы запросить наш сервис GA

Dim gkey As String = "key=yourkeystring"

& apos; установить новый URI для получения данных канала и добавить к нему сгенерированный ключ

Dim dataFeedUrl As String = "https://www.google.com/analytics/feeds/data?" & gkey   

& apos; создайте и подтвердите подлинность в нашем экземпляре службы

Dim service As AnalyticsService = New AnalyticsService("MyAnaliticsService")
service.setUserCredentials(username, pass)  

& apos; используйте идентификатор профиля для учетной записи, с которой вы хотите получать данные, вы можете найти ее
& apos; войдя в свою учетную запись Google Analytics, выберите нужный домен в своем списке (синяя ссылка) нажмите на кнопку администратора и на вкладке профилей найти профиль
Вложенная вкладка «Конфигурация», здесь вы найдете идентификатор профиля, в данном случае идентификатор длиной восемь символов, 12345678

Dim query1 As DataQuery = New DataQuery(dataFeedUrl)
With query1            
    .Ids = "ga:12345678" 
    .Metrics = "ga:visits"
    .Sort = "ga:visits"
    .GAStartDate = DateTime.Now.AddMonths(-1).AddDays(-2).ToString("yyyy-MM-dd")
    .GAEndDate = DateTime.Now.ToString("yyyy-MM-dd")
    .StartIndex = 1
End With

& apos; использовать сгенерированный поток данных на основе предыдущего запроса, чтобы получить посещения

Dim dataFeedVisits As DataFeed = service.Query(query1)

For Each entry As DataEntry In dataFeedVisits.Entries
    Dim st As String = entry.Title.Text
    Dim ss As String = entry.Metrics(0).Value
    visits = ss
Next

Ответы на вопрос(2)

Ваш ответ на вопрос