通过cURL登录CAS服务器
Logging on to CAS server through cURL
我正在尝试使用 cURL 登录 CAS 服务器。这是我到目前为止的位置。
我抓取了身份验证页面并将 POST 替换为 GET 以查看我的字段是什么。
file:///cas/login;jsessionid=89C2DA1B80B0C4E812F2D09CC01C05DB?username=&password=<=LT-2960-zIS6pxYZHdsBX7IkykfbW14oLJhdNL&execution=e1s1&_eventId=submit&submit=LOGIN
所以我运行
curl -k --cookie-jar dump --data "jsessionid=89C2DA1B80B0C4E812F2D09CC01C05DB?username=&password=<=LT-2960-zIS6pxYZHdsBX7IkykfbW14oLJhdNL&execution=e1s1&_eventId=submit&submit=LOGIN" https://CASHOST/cas/login > output
(明显填写用户名、密码、CASHOST)
但是我的输出是空白的。如果我删除 jsessionid 字段,它也是空白的。
让我担心的是 jsessionid 字段,因为它不断变化。
有什么想法吗?
请使用 curl -v。
可能您正在将 302 重定向到登录页面。
我正在使用领养
https://gist.github.com/dodok1/4134605
这对我来说很好,也许对你会更好。
只需要添加 &execution=e1s1
到将密码传递给 CAS 的调用。
我的工作解决方案在这里:https://gist.github.com/gkazior/4cf7e4c38fbcbc310267
您可能需要添加 -L
以使 curl 跟随重定向到 CURL_DEST
我正在尝试使用 cURL 登录 CAS 服务器。这是我到目前为止的位置。
我抓取了身份验证页面并将 POST 替换为 GET 以查看我的字段是什么。
file:///cas/login;jsessionid=89C2DA1B80B0C4E812F2D09CC01C05DB?username=&password=<=LT-2960-zIS6pxYZHdsBX7IkykfbW14oLJhdNL&execution=e1s1&_eventId=submit&submit=LOGIN
所以我运行
curl -k --cookie-jar dump --data "jsessionid=89C2DA1B80B0C4E812F2D09CC01C05DB?username=&password=<=LT-2960-zIS6pxYZHdsBX7IkykfbW14oLJhdNL&execution=e1s1&_eventId=submit&submit=LOGIN" https://CASHOST/cas/login > output
(明显填写用户名、密码、CASHOST)
但是我的输出是空白的。如果我删除 jsessionid 字段,它也是空白的。
让我担心的是 jsessionid 字段,因为它不断变化。
有什么想法吗?
请使用 curl -v。 可能您正在将 302 重定向到登录页面。
我正在使用领养 https://gist.github.com/dodok1/4134605 这对我来说很好,也许对你会更好。
只需要添加 &execution=e1s1 到将密码传递给 CAS 的调用。
我的工作解决方案在这里:https://gist.github.com/gkazior/4cf7e4c38fbcbc310267
您可能需要添加 -L
以使 curl 跟随重定向到 CURL_DEST