컬이 비밀번호 검색을 시뮬레이션할 때 이해할 수 없는 오류가 발생합니다.
curl은 비밀번호 검색(Hua Xia Insurance)을 시뮬레이션하고 비밀번호 페이지 http://www.ihxlife.com/forget을 직접 검색합니다...
인증 코드를 받으려면 휴대폰 번호 15677748704(테스트)를 입력하고, 바로 인증코드 오류가 뜹니다
그런데 먼저 공식 홈페이지에 들어가신 후 공식 홈페이지 링크를 통해 페이지에 들어가 인증코드를 받으세요
코드를 통해 달성했습니다. 먼저 메인 페이지를 방문하여 쿠키를 받은 다음, 얻은 쿠키를 사용하여 비밀번호 검색 페이지를 방문하여 쿠키를 업데이트하세요.
그런 다음 인증 코드를 받지 못했습니다. —————— SMS 인증코드 실패
<code> public function forgetPwdIndex(){ $uKey = 'HuaXia' . date("YmdHis") . uniqid(); $cookieVerify = APP_COOKIE . "/" . $uKey . ".tmp"; $url = 'http://www.ihxlife.com/';//登录主页的url来获取cookie $this->getCookie($url, $cookieVerify);//获取到登录页面的cookie //获取找回密码页的cookie $pwdUrl='http://www.ihxlife.com/forget/forgetPwd'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $pwdUrl); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 120); // 设置超时限制防止死循环 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding:gzip, deflate', 'Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Connection:keep-alive', 'Host:www.ihxlife.com')); curl_setopt($ch, CURLOPT_REFERER,'http://www.ihxlife.com/'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieVerify); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieVerify); curl_exec($ch); curl_close($ch); //echo $cookieVerify."<br>"; $this->assign('key', $uKey);//传到页面中 在页面中post该数据 拼组cookie文件 $this->display(); } public function sendPwdMobileCode(){ if(I('post.key')==''||I('post.mobile')==''){ echo json_encode(array('status'=>'10001','message'=>'参数错误')); die; } $requireUrl='http://www.ihxlife.com/sms/smsCode_Send';//请求地址 $postData='mobile='.I('post.mobile').'&busiType=10019&effectiveTime=180'; $cookieVerify = APP_COOKIE . "/" . I('post.key') . ".tmp"; echo $cookieVerify."<br>"; $referer='http://www.ihxlife.com/forget/forgetPwd'; echo $this->curlPost($requireUrl,$postData,$cookieVerify,$referer,30,true); } </code>
<code> public function getCookie($url, $cookieVerify) { echo $cookieVerify."<br>"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding:gzip, deflate', 'Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Connection:keep-alive', 'Host:www.ihxlife.com')); curl_setopt($ch, CURLOPT_TIMEOUT, 120); // 设置超时限制防止死循环 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieVerify); curl_exec($ch); curl_close($ch); } public function curlPost($url, $post_fields, $cookieVerify, $referer = '', $timeOut = 30, $header = '') { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0'); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); if ($referer) { curl_setopt($curl, CURLOPT_REFERER, $referer); } else { curl_setopt($curl, CURLOPT_AUTOREFERER, 1); } if ($header) { //curl_setopt($curl, CURLOPT_HTTPHEADER, array('Host:www.ihxlife.com', 'X-Requested-With:XMLHttpRequest')); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding:gzip, deflate', 'Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Content-Type:application/x-www-form-urlencoded; charset=UTF-8', 'Connection:keep-alive', 'Host:www.ihxlife.com', 'X-Requested-With:XMLHttpRequest')); } curl_setopt($curl, CURLOPT_POSTFIELDS, $post_fields); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_COOKIEFILE, $cookieVerify); curl_setopt($curl, CURLOPT_COOKIEJAR, $cookieVerify); curl_setopt($curl, CURLOPT_TIMEOUT, $timeOut); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $resultData = curl_exec($curl); // 执行操作 curl_close($curl); return $resultData; }</code>
답글 내용:
curl은 비밀번호 검색(Hua Xia Insurance)을 시뮬레이션하고 비밀번호 페이지 http://www.ihxlife.com/forget을 직접 검색합니다...
인증 코드를 받으려면 휴대폰 번호 15677748704(테스트)를 입력하고, 바로 인증코드 오류가 뜹니다
그런데 먼저 공식 홈페이지에 들어가신 후 공식 홈페이지 링크를 통해 페이지에 들어가 인증코드를 받으세요
코드를 통해 달성하세요. 먼저 메인 페이지를 방문하여 쿠키를 받은 후, 획득한 쿠키를 사용하여 비밀번호 검색 페이지를 방문하여 쿠키를 업데이트하세요.
그런 다음 인증 코드를 받지 못했습니다. ——————전송에 실패했습니다. SMS 인증코드가 실패했습니다
<code> public function forgetPwdIndex(){ $uKey = 'HuaXia' . date("YmdHis") . uniqid(); $cookieVerify = APP_COOKIE . "/" . $uKey . ".tmp"; $url = 'http://www.ihxlife.com/';//登录主页的url来获取cookie $this->getCookie($url, $cookieVerify);//获取到登录页面的cookie //获取找回密码页的cookie $pwdUrl='http://www.ihxlife.com/forget/forgetPwd'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $pwdUrl); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 120); // 设置超时限制防止死循环 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding:gzip, deflate', 'Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Connection:keep-alive', 'Host:www.ihxlife.com')); curl_setopt($ch, CURLOPT_REFERER,'http://www.ihxlife.com/'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieVerify); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieVerify); curl_exec($ch); curl_close($ch); //echo $cookieVerify."<br>"; $this->assign('key', $uKey);//传到页面中 在页面中post该数据 拼组cookie文件 $this->display(); } public function sendPwdMobileCode(){ if(I('post.key')==''||I('post.mobile')==''){ echo json_encode(array('status'=>'10001','message'=>'参数错误')); die; } $requireUrl='http://www.ihxlife.com/sms/smsCode_Send';//请求地址 $postData='mobile='.I('post.mobile').'&busiType=10019&effectiveTime=180'; $cookieVerify = APP_COOKIE . "/" . I('post.key') . ".tmp"; echo $cookieVerify."<br>"; $referer='http://www.ihxlife.com/forget/forgetPwd'; echo $this->curlPost($requireUrl,$postData,$cookieVerify,$referer,30,true); } </code>
<code> public function getCookie($url, $cookieVerify) { echo $cookieVerify."<br>"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding:gzip, deflate', 'Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Connection:keep-alive', 'Host:www.ihxlife.com')); curl_setopt($ch, CURLOPT_TIMEOUT, 120); // 设置超时限制防止死循环 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieVerify); curl_exec($ch); curl_close($ch); } public function curlPost($url, $post_fields, $cookieVerify, $referer = '', $timeOut = 30, $header = '') { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0'); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); if ($referer) { curl_setopt($curl, CURLOPT_REFERER, $referer); } else { curl_setopt($curl, CURLOPT_AUTOREFERER, 1); } if ($header) { //curl_setopt($curl, CURLOPT_HTTPHEADER, array('Host:www.ihxlife.com', 'X-Requested-With:XMLHttpRequest')); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding:gzip, deflate', 'Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Content-Type:application/x-www-form-urlencoded; charset=UTF-8', 'Connection:keep-alive', 'Host:www.ihxlife.com', 'X-Requested-With:XMLHttpRequest')); } curl_setopt($curl, CURLOPT_POSTFIELDS, $post_fields); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_COOKIEFILE, $cookieVerify); curl_setopt($curl, CURLOPT_COOKIEJAR, $cookieVerify); curl_setopt($curl, CURLOPT_TIMEOUT, $timeOut); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $resultData = curl_exec($curl); // 执行操作 curl_close($curl); return $resultData; }</code>
문제가 해결되었습니다. 본 웹사이트는 홈페이지 로그인 모듈에 대한 인증코드를 로드할 때 쿠키를 업데이트했습니다. 이전에는 페이지를 로드해야겠다는 생각이 들었는데, 업데이트된 인증 코드를 저장하려면 홈페이지 인증 코드를 다시 방문해야 한다는 것을 눈치채지 못했습니다.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP에 로그인하는 것은 매우 쉬운 작업입니다. 한 가지 기능만 사용하면 됩니다. cronjob과 같은 백그라운드 프로세스에 대해 오류, 예외, 사용자 활동, 사용자가 취한 조치를 기록할 수 있습니다. CakePHP에 데이터를 기록하는 것은 쉽습니다. log() 함수는 다음과 같습니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP는 오픈 소스 MVC 프레임워크입니다. 이를 통해 애플리케이션 개발, 배포 및 유지 관리가 훨씬 쉬워집니다. CakePHP에는 가장 일반적인 작업의 과부하를 줄이기 위한 여러 라이브러리가 있습니다.
