我正在使用PHP + curl腳本通過着名的PP付款gw進行付款(不能接收)。PHP + curl catch POST響應
我可以在外部網站(不是我的)上填寫購物車並登錄付款(快速結賬)。登錄後,我看到提交POST表單的按鈕「continue」。
我能夠發送請求的參數,但我無法檢索響應中包含的回調url,所以我不能去那裏。我想我缺少2個可能由js:fso和fsi生成的參數。
我遵循手動程序(Firebug/NET面板/ POST數據),我可以確認回調網址在那裏。在我的代碼的最後一部分之後,感謝您的幫助。
#CURL SETUP
$session = curl_init();
curl_setopt($session, CURLOPT_HEADER, 1);
curl_setopt($session, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($session, CURLOPT_HTTPGET, 1);
#MY CURL OPERATION
curl_setopt($session, CURLOPT_URL, $website);
curl_setopt($session, CURLOPT_POST, 1);
curl_setopt($session, CURLOPT_POSTFIELDS, $postfields);
curl_setopt($session, CURLOPT_DNS_USE_GLOBAL_CACHE, false);
curl_setopt($session, CURLOPT_DNS_CACHE_TIMEOUT, 2);
curl_setopt($session, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($session, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($session, CURLOPT_FOLLOWLOCATION, true); //needed for 302
$output = curl_exec($session);
print_r($output);
我試圖獲得靈感Searchin的周圍,從預製的PHP類,但所有網站談論接收付款,不付款。
當然,或者我該怎麼做debug,print_r,preg_match等? CURLOPT_RETURNTRANSFER被設置在curl開頭,我將我的問題綜合起來以避免任何誤解。 – fab
你不能留下一些代碼讓它工作,然後說「當然」......你需要提供更多的信息。表單發送了什麼字段?你目前回來的是什麼? – vimist
當然,這是代碼。我不是故意傷害你,對不起,感謝你的幫助。 我發送POST請求是這樣的: https://www.pxxpal.com/en/cgi-bin/merchantpaymentweb?dispatch=0123blabla 我得到的登錄頁面,在我的$輸出,但不完整的JSON響應,我可以從螢火蟲看到: while(1); {「_type」:「Rapids :: PPAJAxxxowResponseVO」,「html」:「 fab