php里有无异于Asp.Net中 CookieContainer的东西吗
程序员文章站
2022-05-10 08:51:23
...
php里有相当于Asp.Net中 CookieContainer的东西吗?
在Asp.Net中,访问页面可通过下面的函数来完成,postData是需要Post指定url的数据:
public string getHtml(string url, CookieContainer cookie, byte[] postData);
在php中如何实现呢?是不是可以这样写呢?
下面这两句是否都不能少呢?
curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile);
只能通过临时文件吗?还有其他改进的方法吗?O(∩_∩)O谢谢啦~~~~~~
------解决方案--------------------
CURLOPT_COOKIEJAR 用于连接关闭时保存cookie到文件
CURLOPT_COOKIEFILE 用于连接时将文件中的cookie发送出去
CURLOPT_COOKIE 用于连接时将变量中的cookie发送出去
是否都要使用,取决于你的应用场景
保存到文件是默认动作
你可以通过设定 CURLOPT_READFUNCTION 用自己的函数来处理
在Asp.Net中,访问页面可通过下面的函数来完成,postData是需要Post指定url的数据:
public string getHtml(string url, CookieContainer cookie, byte[] postData);
在php中如何实现呢?是不是可以这样写呢?
function getHtml($url,$tmpFile,$postData)
{
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile);
if($postData!=NULL)
{
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
}
$content=curl_exec($ch);
curl_close($ch);
return $content;
}
?>
下面这两句是否都不能少呢?
curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile);
只能通过临时文件吗?还有其他改进的方法吗?O(∩_∩)O谢谢啦~~~~~~
------解决方案--------------------
CURLOPT_COOKIEJAR 用于连接关闭时保存cookie到文件
CURLOPT_COOKIEFILE 用于连接时将文件中的cookie发送出去
CURLOPT_COOKIE 用于连接时将变量中的cookie发送出去
是否都要使用,取决于你的应用场景
保存到文件是默认动作
你可以通过设定 CURLOPT_READFUNCTION 用自己的函数来处理
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
上一篇: ibarn是什么
下一篇: 这些CSS选择器 你必须记在脑袋里!
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论