使用Curl和Oauth 2将文件上传到DropBox的DropBox API PUT示例

t1qtbnec  于 2023-04-05  发布在  其他
关注(0)|答案(3)|浏览(175)

我到处找,还没有找到合适的例子,也没有足够的知识来通过文档整理出来。有没有比我更有知识的人可以告诉我如何为OAUTH 2创建CURL命令?我只需要OAUTH 2密钥吗?我看到了一个应用程序密钥,应用程序密钥和OAUTH 2。如果有问题,我会在Perl脚本中使用它。
我找到的最接近的代码是这样的:

curl --request PUT --header "Content-Length: `ls -la jonathan.txt | awk '{ print $5}'`" --header         
 "Content-Type: multipart/mixed" --data-binary "@jonathan.txt" "https://api-    
 content.dropbox.com/1/files_put/dropbox/jonathan.txt?access_token=ABCDEF"

但我不认为这是OAUTH 2。

rur96b6h

rur96b6h1#

如果您有访问令牌(通过应用控制台创建):

curl -H "Authorization: Bearer <your token>" https://api-content.dropbox.com/1/files_put/auto/ -T <your file path>
piah890a

piah890a2#

您需要为帐户提供一个 * 访问令牌 *。(这通常通过OAuth流程获取,但您也可以通过单击Dropbox应用页面上的“生成”按钮为自己的帐户获取一个。请参阅https://www.dropbox.com/developers/blog/94/generate-an-access-token-for-your-own-account。)
一旦你有了一个访问令牌,你的curl命令就应该可以工作了,尽管我更喜欢--header "Authorization:Bearer abc123xyz"而不是把访问令牌放在查询参数中。
我还建议使用“auto”而不是“dropbox”,因为不管应用程序类型如何,它总是做正确的事情。

tyky79it

tyky79it3#

下面是通过CURL请求在Dropbox中上传文件的工作代码。

curl -X POST https://content.dropboxapi.com/2/files/upload \
  --header "Authorization: Bearer <your token>" \
  --header "Dropbox-API-Arg: {\"path\": \"/file_path.txt\",\"mode\": \"add\",\"autorename\": true,\"mute\": false}" \
  --header "Content-Type: application/octet-stream" \
  --data-binary "@file_path.txt"

相关问题