无法使用curl登录到usgs.gov以存储会话cookie
我正在尝试使用无法使用curl登录到usgs.gov以存储会话cookie,curl,post,single-sign-on,session-cookies,Curl,Post,Single Sign On,Session Cookies,我正在尝试使用curl登录。在过去的几天里,我尝试了很多不同的方法,但我似乎永远都无法收到响应发送的会话cookie的第二部分。我已经尝试通过Firefox开发者工具直接将帖子保存为curl请求,并用正确的值替换csrf\u令牌和\uu ncforminfo,但仍然没有任何结果。下面我将包括curl命令、日志输出以及成功登录的一些屏幕截图。 任何帮助都将不胜感激。多谢各位 首先,我使用curl使用GET请求下载页面,我解析该请求以获取表单的隐藏字段 curl-o temp.html“$LOG
curl
登录。在过去的几天里,我尝试了很多不同的方法,但我似乎永远都无法收到响应发送的会话cookie的第二部分。我已经尝试通过Firefox开发者工具直接将帖子保存为curl请求,并用正确的值替换csrf\u令牌
和\uu ncforminfo
,但仍然没有任何结果。下面我将包括curl命令、日志输出以及成功登录的一些屏幕截图。
任何帮助都将不胜感激。多谢各位
- 首先,我使用curl使用
请求下载页面,我解析该请求以获取表单的隐藏字段GET
curl-o temp.html“$LOGIN”
令牌=$(sed-n's/*name=“csrf\u令牌”\s\+value=“\([^”]\+\)./\1/p'temp.html)
编码的\u令牌=$(urlencode$令牌)
FORMINFO=$(sed-n's/*name=“\uu-ncforminfo”\s\+value=“\([^”]\+\)./\1/p'temp.html)
ENCODED_FORMINFO=$(urlencode$FORMINFO)
- 接下来,我获取这些值并发送一个curlpost请求
curl——冗长\
--cookie jar cookies.txt\
-H“主机:ers.cr.usgs.gov”\
-H“用户代理:Mozilla/5.0(Windows NT 10.0;Win64;x64;rv:70.0)Gecko/20100101 Firefox/70.0”\
-H“接受:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8”\
-H“接受语言:en-US,en;q=0.5”\
-H“接受编码:gzip,deflate,br”\
-H“内容类型:应用程序/x-www-form-urlencoded”\
-H“来源:https://ers.cr.usgs.gov" \
-H“连接:保持活动”\
-H“参考:https://ers.cr.usgs.gov/login/" \
-H“升级不安全请求:1”\
--数据“username=$username&password=$password&csrf\u-token=$ENCODED\u-token&\uuuu-ncforminfo=$ENCODED\u-FORMINFO”https://ers.cr.usgs.gov/login/
- 这是curl的详细输出
# Netscape HTTP Cookie File
# https://curl.haxx.se/docs/http-cookies.html
# This file was generated by libcurl! Edit at your own risk.
#HttpOnly_ers.cr.usgs.gov FALSE / TRUE 0 PHPSESSID blahblahblahhereissessionstuff