【问题标题】:Having trouble creating and Event in Google Calendar在 Google 日历中创建和活动时遇到问题
【发布时间】:2019-11-24 10:49:57
【问题描述】:

我正在尝试在我的 Flutter 应用中实现谷歌日历 API。我已成功实施 firebase 身份验证、Google_sign_in 并请求修改日历的权限。

我可以毫无问题地检索我的主日历。我在理解如何插入事件时遇到了困难。

我正在寻找的是如何使用 api 的示例。

我已经尝试按照 javascript 示例进行操作,但 javascript 和 dart 之间的脱节太多,初学者无法拼凑起来。

import 'package:http/http.dart' as http;
import 'dart:convert' show json;

DateTime startTime = DateTime.now();
DateTime endTime = DateTime.now().add(Duration(hours: 2));
var authHeaders;

Future handleGetCalendar(user) async {
    final http.Response responseCal = await http.get(
    'https://www.googleapis.com/calendar/v3/calendars/primary',
    headers: await user.authHeaders,
);
authHeaders = user.authHeaders;

if (responseCal.statusCode != 200) {
    print('Not OK');
}

final Map data = json.decode(responseCal.body);
print(data);
}

Map<String, dynamic> eventMap = {
    'calenderID': 'primary',
    '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': {
    'dateTime': startTime.toIso8601String(),
    'timeZone': 'America/Los_Angeles'
    },
    'end': {
    'dateTime': endTime.toIso8601String(),
    'timeZone': 'America/Los_Angeles'
    },
};


Future<void> handleCreateEvent() async {
//This is as far as I have gotten.  
CalendarApi(http.Client()).events.insert(Event.fromJson(eventMap), 
'primary');
}

我认为问题与发送经过身份验证的请求有关,但我不知道如何创建“客户端”。

【问题讨论】:

    标签: flutter dart google-calendar-api


    【解决方案1】:

    请参阅https://pub.dev/packages/http。自述文件有关于如何创建带有身份验证标头的客户端的说明

    【讨论】:

    • 这对我帮助很大。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 2019-10-24
    • 2017-01-24
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多