首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用DropBox文件请求API收集文件

使用DropBox文件请求API收集文件
EN

Stack Overflow用户
提问于 2022-10-17 12:20:11
回答 1查看 95关注 0票数 0

我需要以编程方式请求一些文件并发送文件作为响应。如何通过API从Delphi创建一个文件请求( https://www.dropbox.com/requests ),这样第三方就可以用这种代码将请求的文件发回给我;

代码语言:javascript
复制
procedure TDropbox.Upload(const AFileName: String);
const
  API_URL = 'https://api-content.dropbox.com/1/files_put/sandbox/';
var
  URL: String;
  Stream: TMemoryStream;
  ShortFileName: String;
  https: TIdHTTP;
  SslIoHandler: TIdSSLIOHandlerSocket;
begin
  if not FileExists(AFileName) then
  begin
    raise EInOutError.CreateFmt('File %s not found', [AFileName]);
  end;

  ShortFileName := ExtractFileName(AFileName);
  URL := API_URL+ShortFileName
    + '?oauth_signature_method=PLAINTEXT&oauth_consumer_key=' + FAppKey
    + '&oauth_token=' + FOAuth.AccessToken
    + '&oauth_signature=' + FAppSecret + '%26' + FOAuth.AccessTokenSecret;

  https := TIdHTTP.Create(nil);
  Stream := TMemoryStream.Create;
  try
    SslIoHandler := TIdSSLIOHandlerSocket.Create(https);
    SslIoHandler.SSLOptions.Method := sslvTLSv1;
    SslIoHandler.SSLOptions.Mode := sslmUnassigned;

    https.IOHandler := SslIoHandler;
    Stream.LoadFromFile(AFileName);

    https.Post(URL, Stream);
  finally
    FreeAndNil(Stream);
    FreeAndNil(https);
  end;
end;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-17 19:11:19

文章中的代码引用了一个API端点,用于使用已退役的Dropbox v1上传文件。

如果希望以编程方式创建文件请求,则应该在当前的Dropbox v2上使用/2/ file _v2/ create端点。您可以在这里找到相关的文档:

https://www.dropbox.com/developers/documentation/http/documentation#file_requests-create

请注意,Dropbox不提供以编程方式将文件上载到文件请求的能力。您可以像上面那样以编程方式创建文件请求,但是上传到文件请求将是一个手动过程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74097174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档