gpt4 book ai didi

node.js - 使用 NodeJS 访问 Dropbox 上的文件

转载 作者:可可西里 更新时间:2023-11-01 16:35:36 26 4
gpt4 key购买 nike

我将 Dropbox API 与 Node JS 结合使用。我能够使用 HTTP 请求将文件上传到我的 Dropbox,但我无法使用它下载它们。我的意图是使用 HTTP 请求来查看保管箱中文件的内容。

这是上传文件的代码:

var request = require('request')
var fs = require('fs')

var token = "XXXXXXXXXXXXXXXXX"
var filename = "path/to/file/file.txt"

var content = fs.readFileSync(filename)

options = {
method: "POST",
url: 'https://content.dropboxapi.com/2/files/upload',
headers: {
"Content-Type": "application/octet-stream",
"Authorization": "Bearer " + token,
"Dropbox-API-Arg": "{\"path\": \"/files/"+filename+"\",\"mode\": \"overwrite\",\"autorename\": true,\"mute\": false}",
},
body:content
};

request(options,function(err, res,body){
console.log("Err : " + err);
console.log("res : " + res);
console.log("body : " + body);
})

现在下载这个文件的请求函数应该是什么?我正在尝试这样的事情:

var request = require('request')
var fs = require('fs')

var token = "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
var filename = "path/to/file/file.txt"

var content = fs.readFileSync(filename)

options = {
method: "GET",
url: 'https://content.dropboxapi.com/2/files/upload',
headers: {
"Content-Type": "application/octet-stream",
"Authorization": "Bearer " + token,
"Dropbox-API-Arg": "{\"path\": \"/files/"+filename+"\",\"mode\": \"overwrite\",\"autorename\": true,\"mute\": false}",
},

};

request(options,function(err, res){
console.log("Err : " + err);
console.log("res : " + res);

})

但是res只是给出了object Object

如何下​​载文件?

最佳答案

您下载文件失败,因为使用的 URL(https://content.dropboxapi.com/2/files/upload) 不正确。根据 Dropbox API document ,正确的 URL 端点是:

https://content.dropboxapi.com/2/files/download

但是,最好使用 npm 模块,例如 dropbox实现需求,因为它已经包装了逻辑。代码如下所示:

var fetch = require('isomorphic-fetch');
var Dropbox = require('dropbox').Dropbox;
var dbx = new Dropbox({ accessToken: 'YOUR_ACCESS_TOKEN_HERE', fetch: fetch });
dbx.filesDownload({path: '...'})
.then(function(data) {
...
});

关于node.js - 使用 NodeJS 访问 Dropbox 上的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56582749/

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