gpt4 book ai didi

javascript - 对所有内容使用 gapi.client.drive.files.insert 或 gapi.client.request

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:34:32 26 4
gpt4 key购买 nike

我正在尝试了解如何最好地使用客户端 Javascript 访问 Google 云端硬盘。我写了一些测试代码来插入一个只有元数据的新文件。我找到了一个使用此代码的示例:

var request = gapi.client.request({
'path': '/drive/v2/files',
'method': 'POST',
'body': {
"title" : "Meta File 1.json",
"mimeType" : "application/json",
"description" : "This is a test of creating a metafile"
}
});

上面的代码运行良好,但它没有使用 gapi.client.drive.files.insert。所以我搜索了 stackoverflow 并尝试了下面的代码:

var mydata = {};
mydata.title = "Meta File using Insert.json";
mydata.mimeType = "application/json";
mydata.description = "We are using insert to create a new file, but only the metadata.";

var request = gapi.client.drive.files.insert( {'resource': mydata} );

此代码也可以正常工作,所以我的问题是我应该使用哪个?是否有任何理由使用各种 api 调用,如 files.insert,或者我应该始终对所有内容使用 gapi.client.request?

最佳答案

你实际上有三个选择......

  1. gapi..request(您的第一个选项)
  2. gapi..files(您的第二个选项)
  3. 纯 javascript(即根本不使用任何谷歌库)

每个选项的基础是相同的 HTTP 请求/响应,因此功能是相同的。这可能归结为个人偏好和信任。

个人喜好您想了解您的应用程序在堆栈中一直在做什么,还是更喜欢使用高级抽象?

信任,Google JS 库是闭源的,并且会在没有警告的情况下任意更新。因此,如果 G 工程师破坏了它(就像他们过去所做的那样),您将无处可去,并且您的应用程序将停止运行,直到它被修复。如果你有一个主流用例,它应该得到修复,但不能保证。如果您使用的是边缘情况(可能是不寻常的 nodejs 配置或特殊浏览器),您可能会被抛在脑后。

我个人使用选项 1,因为如果 Drive 团队向 API 添加新功能,我可以立即使用它,而无需等待 JS Client Library 维护者也支持它。它还使调试更容易,因为通过网络传输的内容与我的代码直接相关。

现在 Drive 支持 CORS 上传,我将从选项 1 迁移到选项 3。如果您想构建 chrome 扩展程序或打包应用程序,选项 3 也是唯一可行的选项。

关于javascript - 对所有内容使用 gapi.client.drive.files.insert 或 gapi.client.request,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19233538/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com