【问题标题】:in libcurl http/ftp download,how to get the file name in server在 libcurl http/ftp 下载中,如何获取服务器中的文件名
【发布时间】:2013-06-07 06:24:05
【问题描述】:

我正在尝试写一个http和ftp下载的客户端,但是我不知道如何获取要下载的url的文件名。

【问题讨论】:

  • 另一个问题是如何区分一个url和http和ftp?
  • 您是在问如何解析您已有的网址吗? HTTP url 以http:https: 开头。 FTP URL 以ftp:ftps: 开头。至于文件名,您是想从已有的 url 中解析文件名,还是想捕获服务器在下载期间发送给您的文件名(仅限 HTTP)?请更新您的问题,详细说明您真正在寻找什么。

标签: visual-c++ curl libcurl


【解决方案1】:

您是否在寻找RFC 6266 描述的 HTTP Content-Disposition 标头?如果该标头没有出现,则您有 URL 可以从中找出文件名。

【讨论】:

    【解决方案2】:

    有两种情况:

    1. URL 包含文件名,例如:
    https://ntcore.com/files/ExplorerSuite.exe
    

    您将提取此名称并保存文件。

    1. URL 不包含文件名,例如:
    http://get.adobe.com/reader/download/?installer=Reader_10.1_Basque_for_Windows&standalone=1%22
    

    在这种情况下,您可以检查 HTTP 标头中的 Content-Disposition 字段。

    在大多数情况下,您可以通过这种方式获取文件名。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-21
      • 2016-05-01
      • 2019-04-08
      • 1970-01-01
      • 2021-09-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多