Hea*_*ger 3 javascript ms-word google-docs node.js google-drive-api
我正在尝试通过 Node.js 使用 API 将 Word 文档转换为 Google 文档。单词文档已经在一个文件夹中,我只想将它们转换为谷歌文档。我正在使用v3。
v3 文档说,为了使用副本转换文件,您需要将转换参数替换为资源正文中的 mimeType。
我不知道该怎么做?
function listFiles(auth) {
const drive = google.drive({version: 'v3', auth});
drive.files.list({
q: "mimeType = 'application/msword'",
pageSize: 100,
fields: 'nextPageToken, files(id, name)',
}, (err, res) => {
if (err) return console.log('The API returned an error: ' + err);
const files = res.data.files;
if (files.length) {
console.log('Files:');
files.map((file) => {
console.log(`${file.name} (${file.id})`);
drive.files.copy({
fileId: file.id,
'name' : 'Updated File Name',
'mimeType' : 'application/vnd.google-apps.document'
})
});
} else {
console.log('No files found.');
}
});
}
Run Code Online (Sandbox Code Playgroud)
不确定我是否完全理解如何引用资源主体。会感激一头牛吗?
如果我的理解是正确的,这个答案怎么样?请将此视为几个可能答案之一。
drive.files.list()在你的脚本中有效。drive.files.copy()有一个修改部分。
nameand 。mimeTyperequestBodyresourcedrive.files.copy({
fileId: file.id,
'name' : 'Updated File Name',
'mimeType' : 'application/vnd.google-apps.document'
})
Run Code Online (Sandbox Code Playgroud)
到:
drive.files.copy(
{
fileId: file.id,
requestBody: { // You can also use "resource" instead of "requestBody".
name: file.name,
mimeType: "application/vnd.google-apps.document"
}
},
(err, res) => {
if (err) return console.log("The API returned an error: " + err);
console.log(res.data); // If you need, you can see the information of copied file.
}
);
Run Code Online (Sandbox Code Playgroud)
drive.files.copy(). 如果发生与范围相关的错误,请添加https://www.googleapis.com/auth/drive到范围中。如果我误解了你的问题并且这不是你想要的方向,我很抱歉。
| 归档时间: |
|
| 查看次数: |
1406 次 |
| 最近记录: |