我用了一个翻译,因为我不会说英语。所以你说话的方式会很奇怪。请理解。
- 我从大型邮件中读取了链接,并创建了一个程序,使用libcurl从邮件服务器下载文件。但是有些网址无法下载。当我在谷歌上查找它时,当url中包含一些字符时,就会出现一个问题,作为解决方案,我找到了一个答案,尝试将其包装在"周围;(引号(。事实上,当我用引号包装url并输入命令时,下载正常进行
我的问题是告诉我在libcurl中设置(CURLOPT_url,url(时,如何在命令curl中看到用引号括住url的效果。为您提供信息,我使用go curl(用Golang包装的libcurl(
- 使用上述程序下载文件时,存在文件名在下载朝鲜语文件名时未正确显示的问题
即使我通过如下设置请求下载文件,文件名仍然无法正确显示。还有别的办法吗?容易的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标题中吗?(,并弄清楚它使用了什么编码。