vb.net - 使用 VB 和 Googles API 在 Googles 日历中创建事件
问题描述
我在尝试使用 VS2015 编写 VB 程序以使用其 API 在 Google 日历中创建事件时遇到问题,似乎明显缺乏有关 API 和 VB 的信息。我已经在下面发布了我的整个代码,而我遇到的问题就在线上:-
Dim createdEvent As [Event] = request.Execute(),我得到的错误是 Insufficient Permission [403] Errors [ Message[Insufficient Permission] Location[ - ] Reason[insufficientPermissions] Domain[global]
谁能帮忙
Imports Google.Apis.Auth.OAuth2
Imports Google.Apis.Calendar.v3
Imports Google.Apis.Calendar.v3.Data
Imports Google.Apis.Services
Imports Google.Apis.Util.Store
Imports System
Imports System.Collections.Generic
Imports System.IO
Imports System.Linq
Imports System.Text
Imports System.Threading
Imports System.Threading.Tasks
Imports Google.Apis.Calendar.v3.EventsResource
Imports Google.Apis.Requests
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
SurroundingSub()
End Sub
Private Sub SurroundingSub()
Dim service = Authenticate()
Dim newEvent As [Event] = New [Event]() With {
.Summary = "Google I/O 2015",
.Location = "800 Howard St., San Francisco, CA 94103",
.Description = "A chance to hear more about Google's developer products.",
.Start = New EventDateTime() With {
.DateTime = DateTime.Parse("2015-05-28T09:00:00-07:00"),
.TimeZone = "America/Los_Angeles"
},
.[End] = New EventDateTime() With {
.DateTime = DateTime.Parse("2015-05-28T17:00:00-07:00"),
.TimeZone = "America/Los_Angeles"
},
.Recurrence = New String() {"RRULE:FREQ=DAILY;COUNT=2"},
.Attendees = New EventAttendee() {New EventAttendee() With {
.Email = "mickburden@btinternet.com"
}, New EventAttendee() With {
.Email = "mickburden@btinternet.com"
}},
.Reminders = New [Event].RemindersData() With {
.UseDefault = False,
.[Overrides] = New EventReminder() {New EventReminder() With {
.Method = "email",
.Minutes = 24 * 60
}, New EventReminder() With {
.Method = "sms",
.Minutes = 10
}}
}
}
Dim calendarId As String = "primary"
Dim request As EventsResource.InsertRequest = service.Events.Insert(newEvent, calendarId)
Dim createdEvent As [Event] = request.Execute()
End Sub
Private Function Authenticate()
Dim scopes = New List(Of String)
scopes.Add(CalendarService.Scope.Calendar)
Dim credential As UserCredential
Using stream As New FileStream("credentials.json", FileMode.Open, FileAccess.Read)
' Using stream As New FileStream("client_secrets.json", FileMode.Open, FileAccess.Read)
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets, scopes, "user", CancellationToken.None,
New FileDataStore("Calendar.VB.Sample")).Result
End Using
Dim initializer As New BaseClientService.Initializer()
initializer.HttpClientInitializer = credential
initializer.ApplicationName = "VB.NET Calendar Sample"
Dim service
service = New CalendarService(initializer)
Return service
End Function
end class
解决方案
推荐阅读
- javascript - 使用 Ajax 和 Javascript 将数量添加到购物车中已有商品的小计的数量向上和向下按钮在点击时不起作用:)
- assembly - 为什么即使没有 16 字节堆栈对齐,linux nasm 也能正常工作
- android - 构建apk给出错误无法创建类型为DefaultUserHomeScopedCompileCaches的服务...在颤振中
- javascript - 如何使用 React-TinyMCE 将 CSS 类添加到我的可编辑元素
- android - 遵循有关单元测试和失败的 Android 文档
- c++ - 在 VSC 中不使用 a.out 进行调试
- google-cloud-platform - 如果我通过 ssh 到 GCP 运行脚本,如果我的本地机器进入睡眠状态,它会被中断吗?
- javascript - 如何在 nodejs/javascript 中通过 websocket 建立安全的客户端/服务器连接?
- javascript - 在 Vuejs 中动态更改按钮文本
- javascript - 如何在我的仓库中的 github 服务器中显示本地 gltf 加载器三个 js