Я использую этот код, найденный в StackOverflow, для управления FusionTable:
API:
Imports Google.Apis.Auth.OAuth2
Imports Google.Apis.Fusiontables.v2
Imports Google.Apis.Services
Imports Google.Apis.Upload
Учетные данные:
Dim scopes() As String = New String() {"oauth2:https://www.googleapis.com/auth/fusiontables"}
Dim creds As GoogleCredential = GoogleCredential.FromStream(File.OpenRead("MYJASON.json"))
creds.CreateScoped(scopes)
Я пробовал с:
Dim scopes() As String = New String() {FusiontablesService.Scope.Fusiontables}
Но тот же результат.
Затем
Dim service As FusiontablesService = New FusiontablesService(New BaseClientService.Initializer With {
.HttpClientInitializer = creds,
.ApplicationName = "MYAPPLICATION"
})
Затем
Dim result As TableResource = service.Table
If result IsNot Nothing Then
Try
Dim str As StreamReader = New StreamReader("MYFILE.csv")
Dim UpStatus As IUploadProgress = service.Table.ReplaceRows("MYTABLE", str.BaseStream, "application/octet-stream").Upload()
If UpStatus.Status = Google.Apis.Upload.UploadStatus.Failed Then
Console.WriteLine(UpStatus.Exception)
End If
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
Else
Console.WriteLine("Error Initializer")
End If
Ошибка при:
service.Table.ReplaceRows
UpStatus.Status = Google.Apis.Upload.UploadStatus.Failed
отл.Сообщение:
Google.Apis.Requests.RequestError Неверные учетные данные [401]
Что не так ??
У меня есть ключ API, 2 IDклиенты OAuth 2.0 и 1 идентификатор сервиса, ничего не работает.