关于libcurl的问题



我用了一个翻译,因为我不会说英语。所以你说话的方式会很奇怪。请理解。

  1. 我从大型邮件中读取了链接,并创建了一个程序,使用libcurl从邮件服务器下载文件。但是有些网址无法下载。当我在谷歌上查找它时,当url中包含一些字符时,就会出现一个问题,作为解决方案,我找到了一个答案,尝试将其包装在"周围;(引号(。事实上,当我用引号包装url并输入命令时,下载正常进行

我的问题是告诉我在libcurl中设置(CURLOPT_url,url(时,如何在命令curl中看到用引号括住url的效果。为您提供信息,我使用go curl(用Golang包装的libcurl(

  1. 使用上述程序下载文件时,存在文件名在下载朝鲜语文件名时未正确显示的问题

即使我通过如下设置请求下载文件,文件名仍然无法正确显示。还有别的办法吗?容易的Setopt(curl.OPT_HTTPHEADER,[]字符串{〃Accept Charset:utf-8〃}(

使用libcurl时不需要用引号括起来。必须使用带curl的引号的原因是因为shell扩展。这只适用于从命令行使用curl;它不适用于libcurl。

例如,当我从命令行使用curl时,我必须在-H选项的参数周围使用引号:

$curl-H"接受字符集:utf-8"http://localhost:8080/

为了防止shell将Accept-Charset: utf-8拆分为两个独立的参数,需要这样做。但是,对于libcurl来说,这不是必需的。

使用上述程序下载文件时,存在以下问题:下载朝鲜语文件名时文件名显示不正确。

Curl将从URL或Content-Disposition标头获取文件名,具体取决于调用Curl的方式。您可能想检查标题和URL,看看正确的文件名在哪里(它在URL中吗?它在HTTP标题中吗?(,并弄清楚它使用了什么编码。

最新更新