簡體   English   中英

在 64 位 Windows 上運行 cURL

[英]Running cURL on 64 bit Windows

我是 cURL 的新手,剛安裝它,但它似乎只能按照感覺行事。 我使用的是從這里獲得的 64 位版本: http://curl.haxx.se/latest.cgi?curl=win64-ssl-sspi以及我在這里找到的安裝說明: http://guides.instructure.com /m/4214/l/83393-how-do-i-install-and-use-curl-on-a-windows-machine 打開一個新的 Powershell window 我可以像這樣使用一個簡單的 GET 請求:

curl http://localhost:3000

但是如果我運行一個 POST

curl -d "hello world" http://localhost:3000

它告訴我“Invoke-WebRequest:無法處理參數,因為參數名稱‘d’不明確。可能的匹配項包括:-DisableKeepAlive -Debug。”

試圖獲得幫助我打字

curl -h or curl --help

給我“Invoke-WebRequest:缺少參數'Headers'的參數。指定'System.Collections.IDictionary'類型的參數並重試。”

正如我所提到的,我是一個 cURL 新手,但奇怪的是它可以獲取請求但沒有別的。 任何想法我做錯了什么?

Windows 7 64 位 Powershell 版本 4

您的問題是您沒有使用安裝的Curl ,而是使用名為Invoke-WebRequest的 CmdLet 。

只需執行:

Remove-item alias:curl

並再次測試您的卷曲,然后將其存儲在您的個人資料中。

解釋是它存在Invoke-WebRequest的本機別名,它是一個 CmdLet,應該提供一種curl 服務。


從 Windows 10 build 17063 及更高版本(2018 年 4 月)開始, Curl包含在 Windows 中,因此您可以直接從 Cmd.exe 或 PowerShell.exe 執行它。 要在 PowerShell 中使用它,請小心取消此 CmdLet 的別名或顯式調用 curl.exe。

使用 Schannel(微軟的原生 TLS 引擎)構建,libcurl 仍然執行對等證書驗證,但它不使用 CA 證書包,而是使用操作系統中內置的證書。

您可以使用命令提示符而不是Windows Powershell執行 curl 命令。 命令提示符不像 Windows Powershell 那樣給 curl 命令起別名。

要打開命令提示符,請按Win + R ,在輸入框中鍵入cmd <Enter>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM