gpt4 book ai didi

PHP使用Curl登录HTTPS页面

转载 作者:太空宇宙 更新时间:2023-11-03 13:47:22 26 4
gpt4 key购买 nike

我正在尝试使用 php curl 函数登录到 https 网页“https://portal.opalonline.co.uk/Home/PortalCore/SignIn/SignIn.aspx

但我想不出如何将值发布到该特定页面(用户名、密码)并“按‘登录’”。

$postfields = array('ctl00_MasterContentContentPane_Signin1_userID_txt'=>'email@address.com', 
'ctl00_MasterContentContentPane_Signin1_password_txt'=>'somepassword123');

/* LOG IN TO TalkTalk ACCOUNT */
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://portal.opalonline.co.uk/Home/PortalCore/SignIn/SignIn.aspx?");
curl_setopt($ch, CURLOPT_HEADER, false);
// curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIE_FILE);
// curl_setopt($ch, CURLOPT_COOKIE, COOKIE_FILE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
curl_setopt($ch, CURLOPT_POST, 1);
var_dump($ch);
$string_exec = curl_exec($ch);
var_dump($string_exec);

我什至无法显示带有 var_dump 的页面 :( 非常感谢想法/建议

最佳答案

首先,我认为您不能像那样执行“数组”操作,因为这会使 PHP/CURL 创建多部分表单,而这不是这种表单。以“name=value&name2=value2”样式提供数据。

然后,确保您还提交了表单中的所有隐藏字段。至少有四个。其中之一由 HTML 设置为您需要提取和设置的长值,还有一些设置其他一些的 javascript 魔法。您可能需要使用浏览器的网络工具来窥探您的浏览器发送的内容,以便能够完美地模仿它。

登录页面设置了 cookie,您可能需要在提交登录表单时传递这些 cookie。因此,您需要先获取 (GET) 登录表单页面以获取 cookie,然后提交登录 POST。

有了那个固定,你应该更近了。如果这还不够,请继续将浏览器的请求与您的请求发送的内容进行比较,并确保它们尽可能相似。

关于PHP使用Curl登录HTTPS页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34795108/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com