在 Google 日历中创建和活动时遇到问题



我正在尝试在我的 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');
}

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

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

相关内容

最新更新