为了账号安全,请及时绑定邮箱和手机立即绑定

在我的 ASP.NET Core MVC 2.2 项目中显示谷歌日历

在我的 ASP.NET Core MVC 2.2 项目中显示谷歌日历

C#
慕婉清6462132 2022-10-23 16:11:02
我只是希望我的用户能够在我的应用程序中访问他们的(不是我的!)谷歌日历。我不需要他们谷歌日历中的任何数据。所以首先我尝试了一个简单的 iframe,但谷歌阻止了这个。我试过这个:https ://developers.google.com/calendar/quickstart/js 。它工作正常,但我只能从谷歌日历访问数据,但我没有日历视图..那么显示用户谷歌日历的最简单方法是什么?
查看完整描述

1 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

您需要研究 X-Frame-Options 标头的工作原理。Google 日历以两种可能的方式响应日历请求:

  1. 如果有问题的日历标记为公开,则返回的响应没有“X-Frame-Options”标头,因此您可以在您的站点中呈现它。

  2. 如果相关日历未标记为公共,则响应包括“X-Frame-Options”标头,其值设置为 DENY。根据 HTTP 规范,这意味着您不能在 IFrame 中显示响应,并且假设您使用的是基于标准的浏览器,您无能为力。

您提到的另一个应用程序可能包括一个 Web 浏览器控件,因此直接呈现日历,这意味着框架选项不会影响它,但是没有一种在浏览器内部模拟它的好方法(同样,HTTP 的一部分规范和预期)。

如果您真的希望能够向他们展示他们的日历,那么您最好的选择是使用您提到的 API 端点中的数据,然后生成您自己的视图。


查看完整回答
反对 回复 2022-10-23
  • 1 回答
  • 0 关注
  • 68 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信