您好我试图使用curl在jsp页面上发布Http帖子。但它不起作用。 这是我正在尝试的PHP代码。
<?php
if(isset($_POST['submit'])){
$captcha = $_POST['answer'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://example.com/post_comments.jsp");
curl_setopt($ch, CURLOPT_REFERER, 'http://www.example.com');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
"post_id=123&body=blabla&title=blabla&name=blablabla8&captcha=$captcha");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result= curl_exec ($ch);
curl_close ($ch);
echo $result;
}else {
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<img src="http://example.com/captcha.jsp" /> <input name="answer" />
<p><input type="submit" name="submit" value="submit"></p>
</form>
<?php
}
?>
任何人请指导纠正它。 提前谢谢
答案 0 :(得分:0)
网页是由人类导航的,这就是为什么你可能会错过很多东西......比如cookie或会话数据。您最好的选择是向该页面发出有效请求并复制所有请求。例如,您可以在firefox / firebug或wireshark中执行此操作。
简而言之:您可能缺少Cookie,模仿它们