使用 cURL 登入網站

使用 cURL 登入網站

我正在嘗試使用以下命令從 cURL 命令列登入

curl --data "使用者名稱=使用者&密碼=密碼&提交=登入"http://www.ip.com:8080/LoginApplication/Login.jsp

之後嘗試使用訪問內頁

curl http://www.ip.com:8080/LoginApplication/Success.jsp

但由於未登錄,我被重定向到錯誤頁面。

我在第一個命令中缺少什麼以便它可以維持會話?我的網站在本地託管

答案1

那麼,您需要將會話資料儲存在 cookie 中。您可以使用-c cookie_filename它來建立 cookie(將其新增至您的登入命令)。然後,對於其他請求,您可以使用 來讀取 cookie -b cookie_filename

在範例中:

curl -s loginpage -c cookiefile -d "user=myself&pass=secure"
curl -s secretpage -b cookiefile

編輯:

請注意,很多時候,loginpage您使用網頁瀏覽器開啟的頁面並不是在其中輸入使用者名稱和密碼的。您必須檢查表單將該資料發佈到的位置(<form>在原始程式碼和action=...屬性中搜尋標籤)。因此,舉例來說,如果您想登錄https://criticker.comloginpagehttps://www.criticker.com/authenticate.php並不是https://www.criticker.com/signin.php,這是您用瀏覽器開啟的。

loginpage瀏覽器的篡改外掛程式/擴充功能可能會幫助您找到發佈到瀏覽器的正確資料和所有資料(例如表單中的隱藏輸入欄位)。

相關內容