我用了翻譯,因為我不會說英語。所以你說話的方式會很奇怪。請理解。
- 我從大郵件中讀取了鏈接,并創建了一個程式來使用 libcurl 從郵件服務器下載檔案。但是有些網址無法下載。我在google上查了一下,是url中包含某些字符時出現的問題,作為解決方案,我找到了一個答案,嘗試在輸入curl命令時將其環繞在“(引號)周圍。實際上,當我將 url 用引號括起來并輸入命令時,下載正常進行。
我在這里的問題是告訴我如何在 libcurl 中設定 (CURLOPT_URL, url) 時在命令 curl 中查看將 url 用引號括起來的效果。供您參考,我正在使用 go-curl(用 Golang 包裝的 libcurl)。
- 使用上述程式下載檔案時,存在下載韓文檔案名時檔案名顯示不正確的問題。
即使我通過如下設定請求下載檔案,檔案名仍然無法正確顯示。有沒有其他辦法?easy.Setopt(curl.OPT_HTTPHEADER, []string{"Accept-Charset: utf-8"})
uj5u.com熱心網友回復:
使用 libcurl 時無需用引號括起來。必須在 curl 中使用引號的原因是外殼擴展。這僅適用于從命令列使用 curl;它不適用于 libcurl。
例如,當我從命令列使用 curl 時,我必須在-H選項的引數周圍使用引號:
$ curl -H "Accept-Charset: utf-8" http://localhost:8080/
這是需要的,以防止外殼分裂Accept-Charset: utf-8成兩個單獨的引數。但是,這對于 libcurl 不是必需的。
使用上述程式下載檔案時,存在下載韓文檔案名時檔案名顯示不正確的問題。
Curl 將從 URL 或 Content-Disposition 標頭獲取檔案名,具體取決于呼叫 curl 的方式。您可能想要檢查標頭和 URL 以查看正確檔案名的位置(是否在 URL 中?是否在 HTTP 標頭中?)并找出它使用的編碼。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/365927.html
上一篇:這個檔案描述符和群是如何作業的?
