Curl

curl收到302或其他東西,很奇怪

  • August 10, 2013

我有以下 curl 命令

curl -X POST -w "\nRESULT CODE:%{http_code}\n" --insecure --header "Content-Type:application/json" --user robot-midc:1ZSXM7 -d @table.json http://databus.nrel.gov/api/registerV1

我收到以下回复

<html>
<head><title>302 Found</title></head>
<body bgcolor="white">
<center><h1>302 Found</h1></center>
<hr><center>nginx/1.2.4</center>
</body>
</html>

嗯,我如何檢查實際的 http 程式碼,是不是 302,因為 curl 文件聲稱他們遵循重定向,所以我不確定發生了什麼?

謝謝,院長


嗯,也許這是 curl 不像瀏覽器那樣遵循 http 到 https 重定向的錯誤????我的問題很簡單,負載均衡器總是重定向到 https 並且我在那裡有 http ……太奇怪了,curl 給出一個更好的錯誤會很好,因為它不會重定向到 https(即。不遵循文件所述的所有重定向)。

傳遞-LcURL,它將跟隨 302。

添加-v到 curl 以查看實際的標題響應。

並且預設情況下它不遵循重定向,添加-L到也遵循重定向,但是(來自手冊頁):

When authentication is used, curl only sends its credentials  to  the
initial  host.  If a redirect takes curl to a different host, it
won't be able to intercept the user+password. See  also  --location-trusted
on how to change this. 

引用自:https://serverfault.com/questions/530116