javascript - Google 云端硬盘如何知道我安装了哪些应用程序?

标签 javascript google-chrome google-drive-api

我刚刚浏览我的 Google 云端硬盘,试图打开一个 .json 文件,它弹出一个对话框,询问我是否要使用我计算机上的应用程序打开该文件:

enter image description here

他们使用什么 API 来访问这些信息?

最佳答案

首先,只有在您的计算机上安装了 Google 云端硬盘后,才会出现“计算机上的应用程序”部分。 “建议的第三方应用程序”只是一个 API 的 XHR,它检索受支持的第三方应用程序列表,按您正在查看的文件的扩展类型过滤。

它的工作方式是通过Native Messaging在计算机上安装的应用程序和 Chrome Extension 之间安装在 Chrome 中。 Google 云端硬盘是 Chrome 中已内置的扩展程序。这不是您自己安装在 Chrome Web Store 中的东西- 它是预装的。

安装在您计算机上的 Google 云端硬盘应用程序与扩展程序来回发送消息,您可以在 extensions::messaging 脚本中看到这些消息到达 Chrome,该脚本为所有您在浏览器中加载的应用。

extensions::messaging

如果您查看以下断点,您会发现我已找到从笔记本电脑上的 Google 云端硬盘应用程序发送到内置扩展程序的消息。它显示了一系列五个应用程序,它们可以打开我在 Google 云端硬盘网络应用程序中单击的文件。

Native Messaging

关于javascript - Google 云端硬盘如何知道我安装了哪些应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38418243/

相关文章:

css - 修复了导致 Chrome 滚动缓慢的背景图片

html - 为什么 srcset 下载两个图像?

python - unauthorized_client : Client is unauthorized to retrieve access tokens using this method

javascript - Webpack 4 捆绑了错误的 javascript

javascript - Jquery slideUp,固定div上的slideDown高度错误

javascript - 如何使用 jQuery 访问页面周围有 "moved"的 DOM 元素?

java - 如何使用java搜索Google Drive V3中的文件夹?

javascript - $watch 不与数据模型工厂一起工作

javascript - Web MIDI API 未在 Chrome Canary 中实现?

java - 如何从谷歌驱动器读取大文件到 gae blobstore