php - 在 PHP 中模拟启用 cookie 的浏览器

标签 php curl curl-multi redirectwithcookies

如何使用 PHP 打开网页并接收其 cookie?

动机:我正在尝试使用 feed43从不支持 RSS 的 HighLearn 网站(远程学习网站)创建 RSS 提要。我找到了包含我需要解析的提要内容的网页,但是,它需要先登录。 幸运的是,登录可以通过 GET 请求完成,所以它就像 fopen()ing "http://highlearn.website/login_page.asp?userID=foo&password=bar "一样简单。但我仍然需要获取登录时生成的 cookie,将 cookie 传递给真正的客户端(也许使用 setcookie()?)然后重定向。

最佳答案

对于服务器端 HTTP 客户端,您应该使用 cURL模块。它将允许您在多个请求中保留 cookie。它还会做一些其他巧妙的事情,例如捆绑请求 (curl_multi) 和透明地处理重定向。

当涉及到将 session 返回给您的用户时,我认为这是不可能的。您需要能够覆盖其他域的 cookie。这会导致严重的安全问题,因此没有浏览器会实现它。

关于php - 在 PHP 中模拟启用 cookie 的浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/297952/

相关文章:

php - 在句柄关闭之前必须调用 curl_close() 两次,并且可以读取 cookie jar。这是一个错误吗?

php - curl 的多个请求(不是 'multi-threaded')

php - 如果我更改文件的位置并且命名空间会自动更改,是否有可能?

php - 在 yii2 中显示多个相关数据

php mysql : UPDATE will only work WHERE data = integer

curl - 为什么authorize.net 使用的证书是由不在众所周知的curl.haxx.se/ca/cacert.pem 列表中的CA 签名的?

php - 如何在 PHP 中使用 curl 发送接受编码 header

php - 为什么 curl_multi_select 和 curl_multi_info_read 相互矛盾?

执行sql的php函数不返回任何内容

c - libcurl (c api) READFUNCTION 用于 http PUT 永远阻塞