我使用googleapi从谷歌驱动器导出文件。我有以下代码在我的export.js.当我运行这个文件,即使我给mimeType它抛出一个错误说"该API返回一个错误:错误:必需的参数:mimeType"
var drive = google.drive({
version: 'v3',
auth: auth
});
var dest = fs.createWriteStream('./public/data/myfile.txt');
drive.files.export({
fileId : fileID,
mimeType : 'text/plain'
}, function(err, response) {
if (err) {
console.log('The API returned an error: ' + err);
return;
}
console.log('Received %d bytes', response.length);
fs.writeFileSync(dest, response);
});
我想你可以这样尝试,确保你的文件与你所请求的mimeType匹配,也许你需要说你正在接受二进制数据。
drive.files.export({
fileId: 'asxKJod9s79', // A Google Doc pdf
mimeType: 'application/pdf'},
{ encoding: null }, // Make sure we get the binary data
function (err, buffer) {
// ...
// convert and write the file
});
请注意,API返回一个缓冲区对象,您需要将其转换并写入文件。参考这个。
或者你可以用这个:
var fileId = '1ZdR3L3qP4Bkq8noWLJHSr_iBau0DNT4Kli4SxNc2YEo';
var dest = fs.createWriteStream('/tmp/resume.pdf');
drive.files.export({
fileId: fileId,
mimeType: 'application/pdf'
})
.on('end', function () {
console.log('Done');
})
.on('error', function (err) {
console.log('Error during download', err);
})
.pipe(dest);
Ohai!这里的维修工。当这样的事情发生时,通常是因为在googleapis
和google-auth库
之间存在一些不匹配。就代码而言,我们这里有一个完整的工作副本:
https://github.com/google/google-api-nodejs-client/blob/master/samples/drive/export.js
现在——该怎么办。你需要确保a.)你使用的是最新版本的GoogleAppis
,b.)你的软件包中没有google auth库
。json。请尝试:
$npm卸载--保存谷歌认证库$npm安装--保存googleapis@28
试一试,让我知道情况:)
> 假设我有一个导出链接,如下所示:
我试图创建一个nodejs应用程序,可以准备我的GoogleDrive文件。我不想要一个每个人都可以使用的应用程序,它只是特定于我的谷歌驱动。 我在控制台中为GoogleDrive创建了一个api密钥,没有任何限制。 这是我正在做的电话:https://www.googleapis.com/drive/v3/files?pageSize=10 当使用这个键我得到这个错误: 这在谷歌硬盘上可能吗?
问题内容: 我正在使用Jenkins Build Flow插件来实现并行化。Groovy DSL执行某些文件操作。即使该选项设置为在特定从属服务器上运行作业,但DSL仍在主服务器上运行。这不是故意的。 有人可以告诉我如何限制DSL在指定的从站上运行吗?即使有一种方法可以通过DSL访问从文件系统,也应该可以。 通常,我们如何使用Groovy从Jenkins主节点访问节点从节点上的文件? 工作空间位于
我正在开发一个android应用程序,我试图将谷歌驱动器集成到我的应用程序中。该程序是允许同步,所以它在SD卡上创建一个文件,然后这个文件被上传到谷歌驱动器上。我成功地进行了身份验证,但是当我使用函数上传时,我得到一个NullPointerException,并且我看不到值在哪里是null,因为当我遍历所有内容时,似乎没有任何内容是null。 下面是我用来执行上传的代码。 以下是我如何获得驱动器服
问题内容: 我试图在节点中陷入进口的泥潭,并试图使用此示例中提供的语法: [备忘单链接](https://hackernoon.com/import-export-default-require-commandjs- javascript-nodejs-es6-vs-cheatsheet-different-tutorial-example-5a321738b50f) 我正在浏览支持表,但无法找到
最近我开始使用node。js。当我在我的一个项目中完成一个需求时,我面临一个问题,我应该能够将一些数据动态写入csv文件,并让它作为弹出窗口提示用户下载(如我们通常看到的,带有保存和取消选项)。在谷歌搜索了一段时间后,我决定使用csv npm模块https://github.com/wdavidw/node-csv-parser.我能够将数据写入文件并使用此模块进行保存。我想提示一个弹出窗口来保存