小编Mat*_*aye的帖子

cURL cookie值

我正在尝试从这个网站下载音乐循环文件:looperman.com.我已注册为用户,我正在尝试使用cURL下载循环.当你登录looperman.com时,有一些cookie被设置,但是通过消除过程,我注意到服务器看到你登录的唯一需要的是'loopermanlooperman'.

我已经抓住了该cookie的值,并将其设置为变量.然后我将它传递到网站,如下:

$sessid = 'somehashedvaluehere';

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Cookie: loopermanlooperman=$sessid;"));
curl_setopt($ch, CURLOPT_URL, "http://www.looperman.com/loops/detail/$pageID");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
echo $response;
Run Code Online (Sandbox Code Playgroud)

当我回应响应时,我看到cookie尚未设置,并且该网站仍然看到我没有登录.我做错了什么?Looperman是使用CodeIgniter构建的.我想知道他们是否有一些保护措施来防止像这样设置cookie?

/// /// UPDATE

我试过COOKIE_JAR和CURLOPT_COOKIE.Cookie仍未设置.我发现这个脚本来自另一个Stack Overflow帖子似乎让我大部分都在那里,但仍然设置了cookie.这里是:

$loginUrl = 'http://www.looperman.com/account/login/';
$loginFields = array('user_email' => 'login@site.com', 'user_password' => 'password');

getUrl($loginUrl, 'post', $loginFields); 
//now you're logged in and a session cookie was generated

$remote_page_content = getUrl('http://www.looperman.com/loops/detail/200');
echo $remote_page_content;

  function getUrl($url, $method='', $vars='') {
    $ch = curl_init();
    if ($method == 'post') {
      curl_setopt($ch, CURLOPT_POST, 1); …
Run Code Online (Sandbox Code Playgroud)

php curl session-cookies

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

curl ×1

php ×1

session-cookies ×1